:root{--bg-gradient-start:#0f172a;--bg-gradient-mid:#1e1b4b;--bg-gradient-end:#312e81;--surface:#ffffffd9;--surface-solid:#fff;--surface-border:#ffffff80;--text:#0f172a;--text-muted:#475569;--text-subtle:#64748b;--accent:#6366f1;--accent-strong:#4f46e5;--accent-soft:#6366f11f;--danger:#dc2626;--shadow-sm:0 2px 8px #0f172a14;--shadow-md:0 10px 30px #0f172a1f;--shadow-lg:0 20px 50px #0f172a2e;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,Assistant,Rubik,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.6}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}body{background:radial-gradient(1200px 600px at 10% -10%, #6366f159, transparent 60%), radial-gradient(900px 500px at 110% 10%, #ec489940, transparent 60%), linear-gradient(160deg, var(--bg-gradient-start), var(--bg-gradient-mid) 55%, var(--bg-gradient-end));min-height:100svh;color:var(--text);background-attachment:fixed}#root{min-height:100svh}a{color:inherit;text-decoration:none}button{font-family:inherit}img{max-width:100%;display:block}[dir=rtl] body{font-family:Assistant,Rubik,Heebo,Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.app-shell{flex-direction:column;min-height:100svh;display:flex}.app-header{z-index:10;-webkit-backdrop-filter:saturate(140%)blur(12px);background:#0f172a8c;border-bottom:1px solid #ffffff14;position:sticky;top:0}.app-header__inner{justify-content:space-between;align-items:center;gap:16px;max-width:1100px;margin:0 auto;padding:14px 24px;display:flex}.app-header__brand{color:#fff;align-items:center;gap:10px;display:inline-flex}.app-header__title{letter-spacing:.2px;background:linear-gradient(120deg,#fff,#c7d2fe 60%,#fbcfe8);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(1rem,1.2vw + .6rem,1.35rem);font-weight:700}.app-header__langs{gap:8px;display:inline-flex}.lang-btn{cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s;display:inline-flex;overflow:hidden}.lang-btn:hover{background:#ffffff26;border-color:#ffffff8c;transform:translateY(-1px)}.lang-btn--active{background:#fff;border-color:#fff;box-shadow:0 4px 12px #ffffff4d}.lang-btn img{object-fit:cover;border-radius:50%;width:22px;height:22px}.page{width:100%;max-width:1100px;margin:0 auto;padding:40px 24px 80px}.posts-page__title{text-align:center;letter-spacing:-.5px;background:linear-gradient(120deg,#fff,#e0e7ff 50%,#fbcfe8);color:#0000;text-shadow:0 2px 24px #00000026;-webkit-background-clip:text;background-clip:text;margin:10px 0 36px;font-size:clamp(1.8rem,3vw + 1rem,3rem);font-weight:800;line-height:1.15}.post-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.post-card{text-align:start;background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);color:var(--text);isolation:isolate;flex-direction:column;padding:22px 22px 20px;transition:transform .25s,box-shadow .25s,background .25s;display:flex;position:relative;overflow:hidden}.post-card:before{content:"";opacity:0;z-index:-1;background:linear-gradient(135deg,#6366f114,#ec48990f);transition:opacity .25s;position:absolute;inset:0}.post-card:hover{box-shadow:var(--shadow-lg);background:var(--surface-solid);transform:translateY(-4px)}.post-card:hover:before{opacity:1}.post-card__head{margin-bottom:10px}.post-card__title{color:var(--text);margin:0 0 6px;font-size:1.2rem;font-weight:700;line-height:1.35}.post-card__date{color:var(--text-subtle);font-size:.85rem;font-weight:500;display:block}.post-card__excerpt{color:var(--text-muted);-webkit-line-clamp:5;line-clamp:5;-webkit-box-orient:vertical;margin:0;font-size:.98rem;line-height:1.6;display:-webkit-box;overflow:hidden}.post-article{background:var(--surface-solid);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid #fff9;padding:32px clamp(20px,4vw,48px) 40px}.post-article__head{border-bottom:1px solid #0f172a14;align-items:flex-start;gap:14px;margin-bottom:24px;padding-bottom:20px;display:flex}.post-article__meta{flex:1;min-width:0}.post-article__title{letter-spacing:-.3px;margin:0 0 8px;font-size:clamp(1.5rem,2vw + .8rem,2.25rem);font-weight:800;line-height:1.25}.post-article__date{color:var(--text-subtle);font-size:.95rem;font-weight:500;display:block}.post-article__content{color:var(--text);word-wrap:break-word;text-align:start;font-size:1.05rem;line-height:1.8}.post-article__content img{border-radius:var(--radius-md);max-width:100%;height:auto;margin:12px 0}.post-article__content a{color:var(--accent-strong);text-decoration:underline}.post-article__content p{margin:0 0 14px}.post-article__content h1,.post-article__content h2,.post-article__content h3{margin-top:1.4em}.back-btn{background:var(--accent-soft);width:42px;height:42px;color:var(--accent-strong);cursor:pointer;border:1px solid #0f172a1a;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:1.3rem;transition:transform .2s,background .2s,box-shadow .2s;display:inline-flex}.back-btn:hover{background:var(--accent-strong);color:#fff;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.spinner{color:#fff;flex-direction:column;align-items:center;gap:12px;padding:40px 0;display:flex}.spinner__ring{border:3px solid #ffffff40;border-top-color:#fff;border-radius:50%;width:44px;height:44px;animation:.9s linear infinite spin}.spinner__label{color:#ffffffd9;font-size:.95rem}@keyframes spin{to{transform:rotate(360deg)}}.error-banner{color:#991b1b;border-radius:var(--radius-md);background:#fee2e2;border:1px solid #fecaca;margin:10px 0;padding:14px 18px;font-weight:500}@media (width<=520px){.page{padding:28px 16px 60px}.app-header__inner{padding:12px 16px}.post-article{padding:22px 18px 28px}}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}
