@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-cyrillic-wght-normal.Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-greek-wght-normal.DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-vietnamese-wght-normal.usUDDRr7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-ext-wght-normal.Ch3YOpNY.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-wght-normal.DHIcAJRg.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: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}:root{--bg:#f6f3ee;--bg-soft:#efeae2;--surface:#fffefb;--ink:#17140f;--ink-2:#3a342d;--muted:#6b6359;--faint:#978e82;--line:#e4ddd2;--line-strong:#d3c9ba;--accent:#e8590c;--accent-text:#c2410c;--accent-ink:#fff;--accent-soft:#fbe7da;--amber:#ffb547;--green:#22a06b;--panel:#171410;--panel-2:#221d18;--panel-ink:#f6f1ea;--panel-muted:#a79e92;--panel-line:#332c25;--cover-bg-1:#1d1814;--cover-bg-2:#0d0b09;--dot:#17140f21;--blob-a:#ffc9a3;--blob-b:#ffe2a8;--shadow-sm:0 1px 2px #3c28140d, 0 2px 8px -2px #3c28140f;--shadow:0 1px 2px #3c28140a, 0 18px 40px -18px #3c281438;--shadow-lg:0 2px 4px #3c28140a, 0 30px 70px -24px #3c28144d;--font-sans:"Manrope Variable", "Vazirmatn Variable", system-ui, -apple-system, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Hiragino Sans", "Yu Gothic UI", "Noto Sans CJK SC", "Nirmala UI", "Kohinoor Devanagari", "Noto Sans Devanagari", sans-serif;--font-mono:"Cascadia Code", "JetBrains Mono", "SF Mono", ui-monospace, Menlo, Consolas, monospace;--r-xl:32px;--r-lg:24px;--r:18px;--r-sm:12px;--wrap:1180px;--narrow:740px;--gutter:clamp(16px, 5vw, 40px);--header-h:68px;--ease:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--track:-.02em;--track-tight:-.04em;--track-wide:.08em;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e0c0b;--bg-soft:#151210;--surface:#171412;--ink:#f4efe8;--ink-2:#d9d1c6;--muted:#a39a8f;--faint:#7a7268;--line:#29241f;--line-strong:#3a332c;--accent:#ff7a3d;--accent-text:#ff9a66;--accent-ink:#1a0d05;--accent-soft:#3a1d0e;--panel:#141110;--panel-2:#1d1916;--panel-line:#2e2722;--dot:#f4efe81a;--blob-a:#7a3412;--blob-b:#5c4410;--shadow-sm:0 1px 2px #0006;--shadow:0 1px 2px #0000004d, 0 18px 44px -18px #000000b3;--shadow-lg:0 2px 4px #0000004d, 0 30px 70px -24px #000c;color-scheme:dark}}:root[data-theme=dark]{--bg:#0e0c0b;--bg-soft:#151210;--surface:#171412;--ink:#f4efe8;--ink-2:#d9d1c6;--muted:#a39a8f;--faint:#7a7268;--line:#29241f;--line-strong:#3a332c;--accent:#ff7a3d;--accent-text:#ff9a66;--accent-ink:#1a0d05;--accent-soft:#3a1d0e;--panel:#141110;--panel-2:#1d1916;--panel-line:#2e2722;--dot:#f4efe81a;--blob-a:#7a3412;--blob-b:#5c4410;--shadow-sm:0 1px 2px #0006;--shadow:0 1px 2px #0000004d, 0 18px 44px -18px #000000b3;--shadow-lg:0 2px 4px #0000004d, 0 30px 70px -24px #000c;color-scheme:dark}:root:is(:lang(fa),:lang(ar),:lang(hi),:lang(zh),:lang(ja)){--track:0;--track-tight:0;--track-wide:0}:root:is(:lang(fa),:lang(ar)){--font-sans:"Vazirmatn Variable", "Manrope Variable", system-ui, "Segoe UI", Tahoma, sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 24px);-webkit-tap-highlight-color:transparent}body{background:var(--bg);min-height:100dvh;color:var(--ink);font-family:var(--font-sans);font-feature-settings:"ss01", "cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;flex-direction:column;margin:0;font-size:1.0625rem;line-height:1.65;display:flex;overflow-x:clip}:root:is(:lang(fa),:lang(ar),:lang(hi),:lang(zh),:lang(ja)) body{line-height:1.85}:root:is(:lang(fa),:lang(ar)) body{font-feature-settings:normal}main{flex:1}h1,h2,h3{letter-spacing:var(--track);text-wrap:balance;margin:0;font-weight:750;line-height:1.12}:root:is(:lang(fa),:lang(ar),:lang(hi),:lang(zh),:lang(ja)) :is(h1,h2,h3){font-weight:800;line-height:1.45}:lang(ja) :is(h1,h2,h3,.chip){word-break:auto-phrase}p{text-wrap:pretty;margin:0}a{color:inherit;text-decoration:none}img,svg{max-width:100%;display:block}img{height:auto}button{font:inherit;color:inherit}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:8px}::selection{background:var(--accent);color:var(--accent-ink)}.wrap{width:100%;max-width:var(--wrap);padding-inline:max(var(--gutter), env(safe-area-inset-left));margin-inline:auto}.wrap--narrow{max-width:calc(var(--narrow) + 2 * var(--gutter))}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.skip{inset-inline-start:12px;z-index:100;background:var(--ink);color:var(--bg);border-radius:10px;padding:10px 16px;transition:top .2s;position:fixed;top:-60px}.skip:focus{top:12px}.icon{flex:none}[dir=rtl] .flip{scale:-1 1}.progress{inset-inline:0;z-index:60;background:linear-gradient(to right, var(--accent), var(--amber));height:3px;transform:scaleX(var(--p,0));transform-origin:0;opacity:0;transition:opacity .3s;position:fixed;top:0}[dir=rtl] .progress{transform-origin:100%;background:linear-gradient(to left, var(--accent), var(--amber))}.progress[data-on]{opacity:1}.toast{inset-inline:0;bottom:max(24px, env(safe-area-inset-bottom));z-index:70;background:var(--ink);width:max-content;max-width:calc(100% - 32px);color:var(--bg);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:opacity .3s var(--ease), translate .4s var(--ease);border-radius:999px;margin-inline:auto;padding:10px 18px;font-size:.92rem;font-weight:600;position:fixed;translate:0 12px}.toast:empty{display:none}.toast.is-on{opacity:1;translate:0}.header{z-index:50;border-bottom:1px solid #0000;transition:background-color .3s,border-color .3s,box-shadow .3s;position:sticky;top:0}.header[data-scrolled]{background:color-mix(in srgb, var(--bg) 80%, transparent);-webkit-backdrop-filter:saturate(1.5)blur(16px);border-bottom-color:color-mix(in srgb, var(--line) 80%, transparent)}.header__row{min-height:var(--header-h);align-items:center;gap:8px 16px;display:flex}.brand{letter-spacing:var(--track);align-items:center;gap:10px;font-weight:750;display:inline-flex}.brand__mark{background:var(--ink);width:38px;height:38px;transition:transform .5s var(--ease-spring), background-color .3s;border-radius:12px;place-items:center;display:grid}.brand__mark svg{fill:none;width:26px;height:26px;stroke:var(--bg);stroke-width:5.5px;stroke-linecap:round;stroke-linejoin:round}.brand__mark .brand__d{stroke:var(--accent)}.brand:hover .brand__mark{transform:rotate(-8deg)scale(1.06)}.brand__name{font-size:1.02rem}.nav{border-radius:999px;gap:2px;margin-inline-start:auto;padding:4px;display:flex}.nav a{color:var(--muted);white-space:nowrap;border-radius:999px;padding:7px 14px;font-size:.94rem;font-weight:550;transition:color .2s,background-color .2s;position:relative}.nav a:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 6%, transparent)}.nav a[aria-current=page]{color:var(--ink);background:var(--surface);box-shadow:var(--shadow-sm), inset 0 0 0 1px var(--line)}.tools{align-items:center;gap:6px;display:flex}.icon-btn{border:1px solid var(--line);background:var(--surface);min-width:40px;height:40px;color:var(--ink);cursor:pointer;transition:border-color .2s, background-color .2s, transform .3s var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:.82rem;font-weight:650;list-style:none;display:inline-flex}.icon-btn::-webkit-details-marker{display:none}.icon-btn:hover{border-color:var(--line-strong);background:var(--bg-soft)}.icon-btn:active{transform:scale(.94)}.lang__code{font-family:var(--font-mono);letter-spacing:.04em}.theme .icon{transition:transform .6s var(--ease-spring)}.theme:hover .icon{transform:rotate(40deg)}.theme .moon{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme .moon{display:block}:root:not([data-theme=light]) .theme .sun{display:none}}:root[data-theme=dark] .theme .moon{display:block}:root[data-theme=dark] .theme .sun{display:none}.lang{position:relative}.lang[open]>summary{border-color:var(--accent)}.lang__panel{inset-inline-end:0;width:min(320px, calc(100vw - 2 * var(--gutter)));background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-lg);transform-origin:100% 0;animation:pop .28s var(--ease);padding:8px;position:absolute;top:calc(100% + 10px)}[dir=rtl] .lang__panel{transform-origin:0 0}.lang__title{color:var(--faint);letter-spacing:var(--track-wide);text-transform:uppercase;padding:6px 10px 8px;font-size:.78rem;font-weight:650}.lang__menu{grid-template-columns:1fr 1fr;gap:2px;margin:0;padding:0;list-style:none;display:grid}.lang__menu a{border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:.94rem;line-height:1.4;transition:background-color .15s;display:flex}.lang__menu a:hover{background:var(--bg-soft)}.lang__tag{font-family:var(--font-mono);color:var(--faint);text-transform:uppercase;font-size:.7rem}.lang__menu a[aria-current=true]{background:var(--accent-soft);color:var(--accent-text);font-weight:700}.lang__menu a[aria-current=true] .lang__tag{color:inherit}@keyframes pop{0%{opacity:0;transform:translateY(-6px)scale(.97)}}@media (width<=760px){:root{--header-h:104px}.header__row{flex-wrap:wrap;min-height:0;padding-block:10px 6px}.brand__name{display:none}.tools{margin-inline-start:auto}.nav{order:3;justify-content:space-between;width:100%;margin:0;padding:0}.nav a{text-align:center;flex:1;padding-inline:8px}}@media (width<=380px){.header__cta{display:none}}.btn{cursor:pointer;white-space:nowrap;min-height:50px;transition:transform .35s var(--ease), box-shadow .35s var(--ease), background-color .2s, border-color .2s, color .2s;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:12px 24px;font-size:1rem;font-weight:650;line-height:1.3;display:inline-flex;position:relative}.btn .icon{transition:transform .35s var(--ease)}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)scale(.98)}.btn:hover .icon.flip{transform:translate(3px)}[dir=rtl] .btn:hover .icon.flip{transform:translate(-3px)}.btn--primary{background:var(--ink);color:var(--bg);box-shadow:0 10px 24px -12px color-mix(in srgb, var(--ink) 60%, transparent)}.btn--primary:hover{background:var(--accent);color:var(--accent-ink);box-shadow:0 16px 32px -12px var(--accent)}.btn--ghost{background:var(--surface);border-color:var(--line)}.btn--ghost:hover{border-color:var(--ink)}.btn--sm{gap:8px;min-height:40px;padding:8px 16px;font-size:.9rem}.link-arrow{color:var(--accent-text);white-space:nowrap;align-items:center;gap:8px;font-weight:650;display:inline-flex}.link-arrow .icon{transition:transform .35s var(--ease)}.link-arrow:hover .icon{transform:translate(4px)}[dir=rtl] .link-arrow:hover .icon{transform:translate(-4px)}.kicker{font-family:var(--font-mono), var(--font-sans);letter-spacing:var(--track-wide);text-transform:uppercase;color:var(--muted);align-items:center;gap:10px;font-size:.8rem;font-weight:600;display:inline-flex}:root:is(:lang(fa),:lang(ar),:lang(hi),:lang(zh),:lang(ja)) .kicker{font-family:var(--font-sans);font-size:.88rem}.kicker:before{content:"";background:var(--accent);width:18px;height:1.5px}.kicker__num{color:var(--accent-text)}.kicker:has(.kicker__num):before{display:none}.kicker__num:after{content:"";vertical-align:middle;background:var(--line-strong);width:18px;height:1.5px;margin-inline:10px 0;display:inline-block}.kicker--light{color:var(--panel-muted)}.hero{isolation:isolate;margin-top:calc(-1 * var(--header-h));padding-block:calc(var(--header-h) + clamp(48px, 9vw, 112px)) clamp(56px, 9vw, 112px);position:relative}.hero__bg{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero__dots{background-image:radial-gradient(circle at 1px 1px, var(--dot) 1px, transparent 1.5px);background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 70% at 50% 40%,#000 30%,#0000 75%);mask-image:radial-gradient(80% 70% at 50% 40%,#000 30%,#0000 75%)}.hero__dots--lit{background-image:radial-gradient(circle at 1px 1px, var(--accent) 1.2px, transparent 1.8px);mask-image:radial-gradient(260px circle at var(--mx,50%) var(--my,40%), #000 10%, transparent 75%);-webkit-mask-image:radial-gradient(260px circle at var(--mx,50%) var(--my,40%), #000 10%, transparent 75%);opacity:0;transition:opacity .5s}.hero[data-lit] .hero__dots--lit{opacity:1}.hero__glow{aspect-ratio:1;background:radial-gradient(circle, color-mix(in srgb, var(--accent) 22%, transparent), transparent 65%);width:520px;translate:calc(var(--mx,50%) - 260px) calc(var(--my,40%) - 260px);opacity:0;transition:opacity .6s var(--ease), translate .5s var(--ease);border-radius:50%;position:absolute;top:0;left:0}.hero[data-lit] .hero__glow{opacity:1}.blob{aspect-ratio:1;filter:blur(90px);opacity:.5;border-radius:50%;width:clamp(300px,44vw,600px);animation:26s ease-in-out infinite alternate drift;position:absolute}.blob--a{background:var(--blob-a);top:-10%;inset-inline-end:-8%}.blob--b{background:var(--blob-b);bottom:-20%;opacity:.4;animation-duration:32s;animation-delay:-10s;inset-inline-start:20%}@keyframes drift{0%{transform:translate(0,0)scale(1)}50%{transform:translate(-6%,8%)scale(1.12)}to{transform:translate(7%,-5%)scale(.94)}}.hero__grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);align-items:center;gap:48px clamp(40px,6vw,96px);display:grid}.eyebrow{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 75%, transparent);-webkit-backdrop-filter:blur(8px);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:10px;padding:7px 14px 7px 12px;font-size:.88rem;font-weight:650;display:inline-flex}.pulse{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px;position:relative}.pulse:after{content:"";background:inherit;animation:ping 2.2s var(--ease) infinite;border-radius:50%;position:absolute;inset:0}.pulse--green{background:var(--green)}@keyframes ping{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(3)}}.hero h1{letter-spacing:var(--track-tight);margin-top:26px;font-size:clamp(2.6rem,7vw,5.2rem);font-weight:800;line-height:1.02}:root:is(:lang(fa),:lang(ar),:lang(hi),:lang(zh),:lang(ja)) .hero h1{font-size:clamp(2.2rem,6vw,4.3rem);line-height:1.3}.hero__aka{letter-spacing:var(--track);background:linear-gradient(100deg, var(--accent-text), var(--accent) 50%, var(--amber));color:#0000;-webkit-background-clip:text;background-clip:text;margin-top:.45em;font-size:.42em;font-weight:650;line-height:1.35;display:block}[dir=rtl] .hero__aka{background-image:linear-gradient(-100deg, var(--accent-text), var(--accent) 50%, var(--amber))}.hero__intro{max-width:34em;color:var(--muted);margin-top:24px;font-size:clamp(1.1rem,1.8vw,1.28rem)}.hero__cta{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.rotator{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:40px;font-size:.95rem;display:flex}.rotator__label{color:var(--muted);align-items:center;gap:8px;display:inline-flex}.rotator__label .icon{color:var(--accent)}.rotator__words{border:1px dashed var(--line-strong);background:var(--surface);border-radius:999px;max-width:100%;padding:4px 14px;font-weight:700;display:inline-grid;overflow:hidden}.rotator__words>span{white-space:nowrap;opacity:0;transition:opacity .5s var(--ease), transform .6s var(--ease);grid-area:1/1;transform:translateY(110%)}.rotator__words>.is-on{opacity:1;transform:none}.rotator__words>.is-out{opacity:0;transform:translateY(-110%)}@media (width<=560px){.rotator__words{border-radius:14px}.rotator__words>span{white-space:normal;text-wrap:balance}}.hero__visual{justify-self:center;width:min(100%,400px);position:relative}.portrait{aspect-ratio:1;margin:0;padding:14px;position:relative}.portrait__ring{background:conic-gradient(from var(--spin), transparent 0 40%, var(--accent) 70%, var(--amber) 80%, transparent 92%);border-radius:50%;animation:9s linear infinite spin;position:absolute;inset:0;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 1.5px));mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 1.5px))}.portrait:before{content:"";border:1px solid var(--line);border-radius:50%;position:absolute;inset:0}.portrait:after{content:"";z-index:-1;background:radial-gradient(circle, var(--blob-a), transparent 70%);filter:blur(30px);opacity:.9;border-radius:50%;position:absolute;inset:10%}.portrait picture,.portrait img{border-radius:50%;width:100%;height:100%;display:block}.portrait img{object-fit:cover;box-shadow:var(--shadow-lg);transition:transform .8s var(--ease)}.hero__visual:hover .portrait img{transform:scale(1.025)}.badges{margin:0;padding:0;list-style:none}.badge{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 86%, transparent);-webkit-backdrop-filter:blur(10px);box-shadow:var(--shadow);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:9px 14px;font-size:.85rem;font-weight:650;animation:6s ease-in-out infinite float;display:inline-flex;position:absolute}.badge .icon{color:var(--accent)}.badge--1{top:8%;inset-inline-start:-12%}.badge--2{top:50%;animation-delay:-2s;inset-inline-end:-14%}.badge--3{bottom:6%;animation-delay:-4s;inset-inline-start:-4%}@keyframes float{50%{translate:0 -8px}}@media (width<=1080px){.badge--1{inset-inline-start:-4%}.badge--2{inset-inline-end:-4%}}@media (width<=860px){.hero__grid{grid-template-columns:1fr}.hero__visual{order:-1;justify-self:start;width:150px}.portrait{padding:8px}.badges{display:none}.hero h1{margin-top:20px}}.rise{animation:rise .9s var(--ease) both;animation-delay:calc(var(--i,0) * .1s + 60ms)}@keyframes rise{0%{opacity:0;transform:translateY(20px)}}.section{padding-block:clamp(56px,9vw,112px)}.section--tight{padding-block:clamp(24px,4vw,48px) clamp(48px,8vw,96px)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px 40px;margin-bottom:clamp(28px,4vw,44px);display:flex}.section-head h2{margin-top:14px;font-size:clamp(1.9rem,4vw,2.9rem)}.section-head p{max-width:38em;color:var(--muted);margin-top:12px;font-size:1.06rem}.empty{border:1px dashed var(--line-strong);border-radius:var(--r-lg);color:var(--muted);text-align:center;padding:48px 28px}[data-spot]{--mx:50%;--my:50%}.card:before,.step:before{content:"";z-index:3;border-radius:inherit;background:radial-gradient(240px circle at var(--mx) var(--my), var(--amber), var(--accent) 35%, transparent 70%);-webkit-mask-composite:xor;opacity:0;transition:opacity .35s var(--ease);pointer-events:none;padding:1.5px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}.card:after,.step:after{content:"";z-index:-1;border-radius:inherit;background:radial-gradient(420px circle at var(--mx) var(--my), color-mix(in srgb, var(--accent) 11%, transparent), transparent 65%);opacity:0;transition:opacity .45s var(--ease);pointer-events:none;position:absolute;inset:0}.card[data-lit]:before,.step[data-lit]:before,.card[data-lit]:after,.step[data-lit]:after{opacity:1}.grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:20px;display:grid}.card{isolation:isolate;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);transition:transform .5s var(--ease), box-shadow .5s var(--ease), border-color .3s;flex-direction:column;display:flex;position:relative}.card:has(.card__link:hover),.card:has(.card__link:focus-visible){box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card__media{aspect-ratio:16/9;border-radius:calc(var(--r-lg) - 6px);background:var(--cover-bg-2);margin:6px 6px 0;position:relative;overflow:hidden}.card__media>img,.card__media>.cover{object-fit:cover;width:100%;height:100%;transition:transform 1s var(--ease)}.card:has(.card__link:hover) .card__media>*{transform:scale(1.04)}[dir=rtl] .cover--flow{scale:-1 1}.cover__accent{stroke-dasharray:1;stroke-dashoffset:0}.js .reveal .cover__accent{stroke-dashoffset:1px;transition:stroke-dashoffset 2.2s var(--ease) .3s}.cover__core{transform-box:fill-box;transform-origin:50%;animation:3.6s ease-in-out infinite node}.js .reveal.is-in .cover__accent{stroke-dashoffset:0}.cover__node{transform-box:fill-box;transform-origin:50%;animation:2.8s ease-in-out infinite node;animation-delay:calc(var(--i) * .4s)}@keyframes node{50%{opacity:.6;transform:scale(1.5)}}.card__kind{top:12px;background:color-mix(in srgb, var(--surface) 85%, transparent);-webkit-backdrop-filter:blur(8px);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:6px;padding:5px 11px 5px 9px;font-size:.78rem;font-weight:650;display:inline-flex;position:absolute;inset-inline-start:12px}.card__kind .icon{color:var(--accent)}.card__body{flex-direction:column;flex:1;gap:10px;padding:20px 22px 22px;display:flex;position:relative}.card h3{font-size:1.28rem;line-height:1.3}.card__link:after{content:"";z-index:1;border-radius:var(--r-lg);position:absolute;inset:0}.card__summary{color:var(--muted);font-size:.98rem}.card__foot{align-items:center;gap:10px;margin-top:auto;padding-top:10px;display:flex}.card__foot .tags{flex:1}.card__demo{z-index:2;color:var(--accent-text);align-items:center;gap:4px;font-size:.88rem;font-weight:650;display:inline-flex;position:relative}.card__demo:hover{text-underline-offset:4px;text-decoration:underline}.card__go{border:1px solid var(--line);width:40px;height:40px;transition:background-color .3s, color .3s, border-color .3s, transform .5s var(--ease);border-radius:50%;flex:none;place-items:center;margin-inline-start:auto;display:grid}.card:has(.card__link:hover) .card__go{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);transform:rotate(-45deg)}[dir=rtl] .card:has(.card__link:hover) .card__go{transform:rotate(45deg)}.card--feature{grid-column:1/-1}@media (width>=820px){.card--feature{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);display:grid}.card--feature .card__media{aspect-ratio:auto;min-height:300px;margin:6px;margin-inline-end:0}.card--feature .card__body{justify-content:center;padding:clamp(24px,4vw,48px)}.card--feature h3{font-size:clamp(1.5rem,2.6vw,2rem)}.card--feature .card__summary{font-size:1.05rem}.card--feature .card__foot{margin-top:12px}}.meta{color:var(--faint);flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:.86rem;display:flex}.meta>*+:before{content:"";vertical-align:middle;background:currentColor;border-radius:50%;width:3px;height:3px;margin-inline-end:12px;display:inline-block}.tags{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tags li{border:1px solid var(--line);background:var(--bg-soft);color:var(--ink-2);border-radius:999px;padding:3px 11px;font-size:.78rem;font-weight:600;line-height:1.6}.steps{counter-reset:step;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.step{isolation:isolate;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);background:linear-gradient(to right, var(--accent), var(--amber)) left top / 0 3px no-repeat, var(--surface);flex-direction:column;gap:10px;padding:24px;transition-property:opacity,transform,background-size;display:flex;position:relative}[dir=rtl] .step{background:linear-gradient(to left, var(--accent), var(--amber)) right top / 0 3px no-repeat, var(--surface)}.steps.is-in .step,:root:not(.js) .step{background-size:100% 3px,auto}.step__top{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.step__icon{background:var(--accent-soft);width:48px;height:48px;color:var(--accent-text);transition:transform .5s var(--ease-spring), background-color .4s, color .4s;border-radius:14px;place-items:center;display:grid}.step:hover .step__icon{background:var(--accent);color:var(--accent-ink);transform:rotate(-6deg)scale(1.06)}.step__num{font-family:var(--font-mono), var(--font-sans);color:var(--faint);font-size:.85rem;font-weight:600}.step h3{font-size:1.15rem;line-height:1.35}.step p{color:var(--muted);font-size:.96rem}.js .steps.reveal{opacity:1;transform:none}.js .step{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease), background-size .9s var(--ease);transition-delay:calc(var(--i) * .14s), calc(var(--i) * .14s), calc(var(--i) * .26s + .3s);transform:translateY(18px)}.js .steps.is-in .step{opacity:1;transform:none}@media (width<=980px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.steps{grid-template-columns:1fr}.step__top{margin-bottom:8px}}.proof{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:clamp(32px,5vw,64px);display:grid}.proof h2{margin-top:14px;font-size:clamp(1.9rem,4vw,2.9rem)}.proof__text>p{color:var(--muted);margin-top:16px;font-size:1.06rem}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:28px 0;display:grid}.stat{border-radius:var(--r);border:1px solid var(--line);background:var(--surface);padding:16px}.stat dt{font-family:"Manrope Variable", var(--font-sans);letter-spacing:-.03em;font-variant-numeric:tabular-nums;background:linear-gradient(135deg, var(--accent-text), var(--accent) 50%, var(--amber));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(2rem,4vw,2.6rem);font-weight:800;line-height:1}:root:is(:lang(fa),:lang(ar)) .stat dt{font-family:var(--font-sans);letter-spacing:0}.stat dd{color:var(--muted);margin:8px 0 0;font-size:.86rem;line-height:1.45}.console{border-radius:var(--r-lg);background:var(--panel);color:var(--panel-ink);box-shadow:var(--shadow-lg);border:1px solid var(--panel-line);margin:0;position:relative;overflow:hidden}.console:before{content:"";aspect-ratio:1;top:-180px;background:var(--accent);filter:blur(100px);opacity:.35;pointer-events:none;border-radius:50%;width:360px;position:absolute;inset-inline-end:-120px}.console__bar{border-bottom:1px solid var(--panel-line);background:color-mix(in srgb, var(--panel-2) 70%, transparent);align-items:center;gap:14px;padding:12px 14px 12px 18px;display:flex;position:relative}.console__lights{gap:7px;display:flex}.console__lights i{background:#ff5f57;border-radius:50%;width:11px;height:11px}.console__lights i:nth-child(2){background:#febc2e}.console__lights i:nth-child(3){background:#28c840}.console__title{color:var(--panel-muted);text-align:center;flex:1;font-size:.82rem}.console__replay{border:1px solid var(--panel-line);width:32px;height:32px;color:var(--panel-muted);cursor:pointer;transition:color .2s, border-color .2s, transform .6s var(--ease);background:0 0;border-radius:10px;place-items:center;display:grid}.console__replay:hover{color:var(--panel-ink);border-color:var(--panel-muted);transform:rotate(-180deg)}.console__body{align-content:start;gap:14px;min-height:330px;margin:0;padding:22px 22px 26px;font-size:.95rem;list-style:none;display:grid;position:relative}.console__cmd{font-family:var(--font-mono);text-align:left;flex-wrap:wrap;gap:4px 10px;font-size:.88rem;display:flex}.console__prompt{color:var(--accent)}.console__prompt:after{content:" $";color:var(--panel-muted)}.console__typed{color:var(--panel-ink)}.console[data-state=typing] .console__typed:after{content:"";vertical-align:text-bottom;background:var(--accent);width:8px;height:1.1em;margin-inline-start:2px;animation:1s step-end infinite blink;display:inline-block}.console__step,.console__done{color:var(--panel-ink);flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.console__status{background:color-mix(in srgb, var(--green) 22%, transparent);color:#4ade80;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid;position:relative}.console__spinner{border:2px solid var(--panel-line);border-top-color:var(--accent);border-radius:50%;width:14px;height:14px;animation:.7s linear infinite turn;display:none}.console__langs{flex-wrap:wrap;gap:5px;width:100%;padding-inline-start:34px;display:flex}.console__langs span{border:1px solid var(--panel-line);background:var(--panel-2);font-family:var(--font-mono);text-transform:uppercase;color:var(--panel-muted);border-radius:6px;padding:2px 8px;font-size:.74rem}.console__done{border-radius:var(--r-sm);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);background:color-mix(in srgb, var(--accent) 12%, transparent);margin-top:6px;padding:12px 14px;font-weight:650}.console__done .icon{color:var(--amber)}.console[data-state] [data-console-step]:not([data-on]){visibility:hidden}.console[data-state] [data-console-step][data-on]{animation:rise .45s var(--ease) both}.console [data-on=busy] .console__status{background:0 0}.console [data-on=busy] .console__spinner{display:block}.console [data-on=busy] .console__status .icon{display:none}.console [data-on=busy] .console__langs span{animation:chip-in .4s var(--ease-spring) both;animation-delay:calc(var(--j) * .11s)}.console [data-on=done] .console__langs span{color:var(--panel-ink);border-color:color-mix(in srgb, var(--accent) 40%, var(--panel-line))}@keyframes chip-in{0%{opacity:0;transform:scale(.6)}}@keyframes turn{to{transform:rotate(360deg)}}@keyframes blink{50%{opacity:0}}@media (width<=900px){.proof{grid-template-columns:1fr}}@media (width<=480px){.stats{grid-template-columns:1fr}.stat{align-items:center;gap:16px;display:flex}.stat dd{margin:0}}.faq__grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(32px,5vw,72px);display:grid}.faq__intro{top:calc(var(--header-h) + 32px);position:sticky}.faq__intro .section-head{margin-bottom:20px}.chat{border-radius:var(--r-xl);border:1px solid var(--line);background:var(--surface);height:clamp(560px,78vh,680px);box-shadow:var(--shadow-lg);flex-direction:column;display:none;overflow:hidden}.js .chat{display:flex}.js .faq__static{display:none}.chat__head{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg-soft) 60%, var(--surface));align-items:center;gap:12px;padding:14px 16px;display:flex}.chat__avatar{flex:none;position:relative}.chat__avatar img{object-fit:cover;border-radius:50%;width:44px;height:44px}.chat__online{bottom:1px;background:var(--green);border:2px solid var(--surface);border-radius:50%;width:12px;height:12px;position:absolute;inset-inline-end:1px}.chat__who{flex:1;line-height:1.35;display:grid}.chat__who strong{font-size:1rem}.chat__status{color:var(--green);font-size:.82rem}.chat[data-busy] .chat__status{color:var(--accent-text)}.chat__restart{border:1px solid var(--line);background:var(--surface);cursor:pointer;height:36px;animation:pop .3s var(--ease);border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:.84rem;font-weight:600;transition:border-color .2s,background-color .2s;display:inline-flex}.chat__restart:hover{border-color:var(--line-strong);background:var(--bg-soft)}.chat__restart:hover .icon{transition:transform .6s var(--ease);transform:rotate(-200deg)}.chat__log{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;background-image:radial-gradient(circle at 1px 1px, var(--dot) 1px, transparent 1.5px);background-size:22px 22px;flex-direction:column;flex:1;gap:12px;padding:22px 18px;display:flex;overflow-y:auto}.chat__log:focus-visible{outline-offset:-3px}.msg{max-width:88%;animation:msg-in .45s var(--ease) both;align-items:end;gap:8px;display:flex}.msg--me{flex-direction:row-reverse;align-self:flex-end}.msg__avatar{object-fit:cover;border-radius:50%;flex:none;width:28px;height:28px}.msg__bubble{overflow-wrap:anywhere;border-radius:20px;padding:11px 16px;font-size:.98rem;line-height:1.65}:root:is(:lang(fa),:lang(ar),:lang(hi),:lang(zh),:lang(ja)) .msg__bubble{line-height:1.85}.msg__bubble p+p{margin-top:.7em}.msg--bot .msg__bubble{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-end-start-radius:6px}.msg--me .msg__bubble{background:var(--ink);color:var(--bg);opacity:.82;border-end-end-radius:6px;transition:opacity .3s}.msg--me.is-read .msg__bubble{opacity:1}.msg__bubble.is-typing{padding-block:14px}.dots{gap:5px;display:flex}.dots i{background:var(--faint);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite bounce}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-5px)}}.is-caret:after{content:"";vertical-align:-.15em;background:var(--accent);width:2px;height:1.05em;margin-inline-start:2px;animation:.9s step-end infinite blink;display:inline-block}@keyframes msg-in{0%{opacity:0;transform:translateY(10px)scale(.98)}}.chat__cta{background:var(--accent);color:var(--accent-ink);transition:transform .3s var(--ease), box-shadow .3s;border-radius:999px;align-items:center;gap:8px;margin-top:12px;padding:9px 16px;font-size:.92rem;font-weight:650;display:inline-flex}.chat__cta:hover{box-shadow:0 12px 24px -12px var(--accent);transform:translateY(-2px)}.chat__foot{border-top:1px solid var(--line);background:color-mix(in srgb, var(--bg-soft) 50%, var(--surface));padding:14px 16px 16px}.chat__pick{color:var(--faint);margin-bottom:10px;font-size:.8rem;font-weight:650}.chat__chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line-strong);background:var(--surface);max-width:100%;color:var(--ink);text-align:start;cursor:pointer;transition:border-color .2s, background-color .2s, color .2s, transform .3s var(--ease), opacity .2s;border-radius:14px;padding:8px 14px;font-size:.9rem;font-weight:600;line-height:1.45}.chip:hover{border-color:var(--accent);color:var(--accent-text);background:var(--accent-soft);transform:translateY(-1px)}.chip.is-queued{border-color:var(--accent);color:var(--accent-text);cursor:progress;border-style:dashed}.chip.is-leaving{opacity:0;transform:scale(.92)}@media (width<=900px){.faq__grid{grid-template-columns:1fr}.faq__intro{position:static}}@media (width<=560px){.chat{height:min(82svh,640px);margin-inline:calc(-1 * var(--gutter) + 8px);border-radius:var(--r-lg)}.msg{max-width:94%}.chat__chips{scroll-snap-type:x proximity;scrollbar-width:none;flex-wrap:nowrap;margin-inline:-16px;padding-inline:16px;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 16px),#0000);mask-image:linear-gradient(90deg,#0000,#000 16px calc(100% - 16px),#0000)}.chat__chips::-webkit-scrollbar{display:none}.chip{scroll-snap-align:start;flex:none;max-width:78vw}}.faq__static{gap:12px;margin:0;display:grid}.faq__static>div{border-radius:var(--r);border:1px solid var(--line);background:var(--surface);padding:20px 22px}.faq__static dt{font-weight:700}.faq__static dd{color:var(--muted);margin:8px 0 0}.faq__static dd p+p{margin-top:.6em}.contact{isolation:isolate;border-radius:var(--r-xl);background:var(--panel);color:var(--panel-ink);border:1px solid var(--panel-line);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:32px clamp(32px,5vw,64px);padding:clamp(32px,6vw,72px);display:grid;position:relative;overflow:hidden}.contact__lines{z-index:-1;background:radial-gradient(500px circle at var(--mx) var(--my), color-mix(in srgb, var(--accent) 30%, transparent), transparent 60%), radial-gradient(circle at 1px 1px, #ffffff17 1px, transparent 1.5px) 0 0 / 24px 24px;transition:background-position .2s;position:absolute;inset:0}.contact:after{content:"";z-index:-1;aspect-ratio:1;inset-inline-end:-140px;background:var(--accent);filter:blur(110px);opacity:.4;border-radius:50%;width:460px;animation:22s ease-in-out infinite alternate drift;position:absolute;bottom:-220px}.contact h2{margin-top:14px;font-size:clamp(2rem,4.6vw,3.2rem)}.contact__text p{max-width:30em;color:var(--panel-muted);margin-top:14px;font-size:1.06rem}.contact__actions{gap:12px;display:grid}.contact__action{border-radius:var(--r);border:1px solid var(--panel-line);background:color-mix(in srgb, var(--panel-2) 80%, transparent);-webkit-backdrop-filter:blur(6px);transition:transform .4s var(--ease), border-color .3s, background-color .3s;align-items:center;gap:16px;padding:16px 18px;display:flex}.contact__action:hover{border-color:color-mix(in srgb, var(--accent) 60%, var(--panel-line));transform:translateY(-2px)}.contact__action>span:nth-child(2){flex:1;line-height:1.4;display:grid}.contact__action strong{font-weight:700}.contact__action small{color:var(--panel-muted);text-align:start;unicode-bidi:isolate;font-size:.86rem}[dir=rtl] .contact__action small{text-align:end;justify-self:start}.contact__icon{background:var(--panel-2);width:46px;height:46px;color:var(--panel-ink);border:1px solid var(--panel-line);border-radius:14px;flex:none;place-items:center;display:grid}.contact__action--primary .contact__icon{background:var(--accent);border-color:var(--accent);color:#fff}.contact__arrow{color:var(--panel-muted);transition:transform .4s var(--ease), color .3s}.contact__action:hover .contact__arrow{color:var(--panel-ink);transform:translate(3px)}[dir=rtl] .contact__action:hover .contact__arrow{transform:translate(-3px)}@media (width<=860px){.contact{grid-template-columns:1fr}}.footer{border-top:1px solid var(--line);color:var(--muted);margin-top:clamp(24px,4vw,48px);padding-block:clamp(40px,6vw,64px) 24px;font-size:.94rem}.footer__top{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:32px;display:grid}.footer__about .brand{color:var(--ink)}.footer__about p{max-width:30em;margin-top:14px}.footer__langs{border:1px solid var(--line);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:.85rem;display:inline-flex}.footer__col{align-content:start;gap:10px;display:grid}.footer__label{color:var(--ink);margin-bottom:4px;font-weight:700}.footer__col a{width:fit-content;transition:color .2s}.footer__col a:hover{color:var(--accent-text)}.footer__phone{unicode-bidi:isolate}.footer__bottom{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;margin-top:40px;padding-top:24px;font-size:.88rem;display:flex}.footer__top-link{align-items:center;gap:6px;display:inline-flex}.footer__top-link:hover{color:var(--ink)}.footer__top-link .up{transition:translate .3s var(--ease);rotate:-90deg}.footer__top-link:hover .up{translate:0 -3px}@media (width<=720px){.footer__top{grid-template-columns:1fr 1fr}.footer__about{grid-column:1/-1}}@property --spin{syntax:"<angle>";inherits:false;initial-value:0deg}.powered{isolation:isolate;color:var(--ink);transition:transform .4s var(--ease), box-shadow .4s var(--ease);border-radius:999px;align-items:center;gap:8px;padding:7px 16px 7px 8px;font-size:.85rem;line-height:1;display:inline-flex;position:relative}[dir=rtl] .powered{padding:7px 8px 7px 16px}.powered:before{content:"";z-index:-1;border-radius:inherit;background:conic-gradient(from var(--spin), var(--line) 0 55%, var(--accent) 75%, var(--amber) 85%, var(--line) 100%);animation:6s linear infinite spin;position:absolute;inset:-1.5px}.powered:after{content:"";z-index:-1;border-radius:inherit;background:var(--surface);position:absolute;inset:0}.powered:hover{box-shadow:0 10px 24px -12px var(--accent);transform:translateY(-2px)}.powered:hover:before{animation-duration:1.6s}.powered__icon{background:linear-gradient(135deg, var(--accent), var(--amber));color:#fff;width:24px;height:24px;transition:transform .8s var(--ease);border-radius:50%;place-items:center;display:grid}.powered__icon svg{width:16px;height:16px}.powered:hover .powered__icon{transform:rotate(120deg)}.powered__label{color:var(--muted)}.powered__brand{letter-spacing:.01em;font-family:Manrope Variable,sans-serif;font-weight:800}@keyframes spin{to{--spin:360deg}}.page-head{isolation:isolate;padding-block:clamp(48px,9vw,104px) clamp(16px,3vw,32px);position:relative}.page-head__bg{inset:calc(-1 * var(--header-h)) 0 0;z-index:-1;background-image:radial-gradient(circle at 1px 1px, var(--dot) 1px, transparent 1.5px);background-size:26px 26px;position:absolute;-webkit-mask-image:radial-gradient(70% 90% at 50% 0,#000 20%,#0000 75%);mask-image:radial-gradient(70% 90% at 50% 0,#000 20%,#0000 75%)}.page-head h1{letter-spacing:var(--track-tight);margin-top:16px;font-size:clamp(2.4rem,6vw,4rem);font-weight:800}.page-head p{max-width:36em;color:var(--muted);margin-top:14px;font-size:1.12rem}.page-head .page-head__count{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);border-radius:999px;margin-top:20px;padding:4px 12px;font-size:.85rem;display:inline-block}.post-head{padding-block:clamp(32px,6vw,64px) 0}.back{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;align-items:center;gap:8px;margin-bottom:28px;padding:6px 14px 6px 10px;font-size:.9rem;font-weight:600;transition:color .2s,border-color .2s;display:inline-flex}.back:hover{color:var(--ink);border-color:var(--line-strong)}.back__arrow{transition:translate .3s var(--ease);scale:-1 1}[dir=rtl] .back__arrow{scale:1}.back:hover .back__arrow{translate:-3px}[dir=rtl] .back:hover .back__arrow{translate:3px}.post-head .kicker{display:flex}.post-head h1{letter-spacing:var(--track-tight);margin-top:16px;font-size:clamp(2.2rem,5.4vw,3.6rem);font-weight:800}.post__summary{color:var(--muted);margin-top:18px;font-size:clamp(1.12rem,2vw,1.28rem)}.byline{border-top:1px solid var(--line);align-items:center;gap:12px;margin-top:28px;padding-top:20px;display:flex}.byline__avatar{object-fit:cover;border-radius:50%;width:44px;height:44px}.byline__text{flex:1;line-height:1.4;display:grid}.byline__text .meta{font-size:.85rem}.post__tags{flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:18px;display:flex}.post__label{color:var(--faint);align-items:center;gap:8px;font-size:.86rem;font-weight:650;display:inline-flex}.post__actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.post__cover{aspect-ratio:3;border-radius:var(--r-xl);border:1px solid var(--line);background:var(--cover-bg-2);margin-top:clamp(32px,5vw,48px);overflow:hidden}.post__cover>img,.post__cover>.cover{object-fit:cover;width:100%;height:100%}@media (width<=640px){.post__cover{aspect-ratio:16/9;border-radius:var(--r-lg)}}.post__end{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-top:56px;padding:24px;display:flex}.post__langs{flex:1;min-width:min(100%,320px)}.post__langs ul{flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.post__langs a{border:1px solid var(--line);border-radius:999px;padding:4px 12px;font-size:.88rem;transition:border-color .2s,color .2s,background-color .2s;display:block}.post__langs a:hover{border-color:var(--accent);color:var(--accent-text);background:var(--accent-soft)}.prose{color:var(--ink-2);overflow-wrap:break-word;margin-top:clamp(36px,5vw,56px);font-size:1.125rem;line-height:1.8}:root:is(:lang(fa),:lang(ar),:lang(hi),:lang(zh),:lang(ja)) .prose{line-height:2}.prose>*+*{margin-top:1.2em}.prose>:first-child:first-line{color:var(--ink)}.prose h2,.prose h3{color:var(--ink);scroll-margin-top:calc(var(--header-h) + 24px)}.prose h2{margin-top:2.1em;font-size:clamp(1.45rem,2.6vw,1.75rem);position:relative}.prose h2:before{content:"";background:linear-gradient(to right, var(--accent), var(--amber));border-radius:3px;width:28px;height:3px;margin-bottom:14px;display:block}.prose h3{margin-top:1.7em;font-size:1.25rem}.prose strong{color:var(--ink);font-weight:700}.prose a{color:var(--accent-text);text-underline-offset:4px;text-decoration:underline 1.5px;text-decoration-color:color-mix(in srgb, var(--accent) 40%, transparent);transition:text-decoration-color .2s}.prose a:hover{text-decoration-color:currentColor}.prose ul,.prose ol{padding-inline-start:1.4em}.prose ul{padding-inline-start:1.2em;list-style:none}.prose ul>li{position:relative}.prose ul>li:before{content:"";inset-inline-start:-1.05em;background:var(--accent);border-radius:2px;width:7px;height:7px;position:absolute;top:.75em;rotate:45deg}:root:is(:lang(fa),:lang(ar),:lang(hi),:lang(zh),:lang(ja)) .prose ul>li:before{top:.85em}.prose li+li{margin-top:.55em}.prose ol li::marker{color:var(--accent-text);font-weight:700}.prose blockquote{border-inline-start:3px solid var(--accent);color:var(--muted);margin-inline:0;padding:6px 22px;font-size:1.12em}.prose img{border-radius:var(--r);border:1px solid var(--line)}.prose code{background:var(--bg-soft);border:1px solid var(--line);font-family:var(--font-mono);direction:ltr;unicode-bidi:isolate;border-radius:6px;padding:2px 6px;font-size:.86em}.prose pre{text-align:left;border-radius:var(--r);color:var(--panel-ink);direction:ltr;padding:18px 20px;font-size:.9rem;line-height:1.65;overflow-x:auto;background:var(--panel)!important}.prose pre code{font-size:inherit;background:0 0;border:0;padding:0}.prose hr{border:0;border-top:1px solid var(--line);margin-block:2.4em}.prose table{border-collapse:collapse;width:100%;font-size:.95em}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:start;padding:10px 12px}.lost{isolation:isolate;padding-block:clamp(64px,12vw,140px);position:relative;overflow:hidden}.lost__art{z-index:-1;opacity:.6;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 30%,#0000);mask-image:linear-gradient(#000 30%,#0000)}.lost__art .cover{width:100%;height:100%}.lost__code{font-family:var(--font-mono), var(--font-sans);background:var(--accent-soft);color:var(--accent-text);border-radius:999px;padding:4px 12px;font-size:1rem;font-weight:700;display:inline-block}.lost h1{letter-spacing:var(--track-tight);margin-top:20px;font-size:clamp(2.4rem,6vw,4.2rem);font-weight:800}.lost p{max-width:32em;color:var(--muted);margin-top:16px;font-size:1.15rem}.js .reveal{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transition-delay:calc(var(--i,0) * 90ms);transform:translateY(24px)}.js .reveal.is-in{opacity:1;transform:none}.js .card.reveal.is-in{transition:opacity .8s var(--ease), transform .5s var(--ease), box-shadow .5s var(--ease);transition-delay:0s}:root[data-theme-switch]::view-transition-old(root),:root[data-theme-switch]::view-transition-new(root){mix-blend-mode:normal;animation:none}:root[data-theme-switch]::view-transition-new(root){animation:theme-reveal .65s var(--ease)}@keyframes theme-reveal{0%{clip-path:circle(0 at var(--tx) var(--ty))}to{clip-path:circle(150vmax at var(--tx) var(--ty))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js .reveal,.js .step{opacity:1;transform:none}}@media print{.header,.footer,.progress,.toast,#contact,.post__end,.hero__bg{display:none!important}body{color:#000;background:#fff}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
