:root{--bg: #0e0f13;--bg-soft: #16181f;--bg-card: #1a1d26;--border: #2a2e3a;--text: #e8e9ee;--text-dim: #a4a8b6;--text-faint: #6f7585;--accent: #8b7cff;--accent-2: #4dd6c1;--accent-glow: rgba(139, 124, 255, .18);--maxw: 880px;--radius: 20px;--font: -apple-system, "Segoe UI", Roboto, Helvetica, Arial, system-ui, sans-serif;--mono: ui-monospace, "SF Mono", "Cascadia Code", Consolas, monospace}*{box-sizing:border-box}.glass-defs{position:absolute;width:0;height:0;overflow:hidden}html{scroll-behavior:smooth}body{margin:0;overflow-x:clip;font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:-25vmax;z-index:-1;pointer-events:none;background:radial-gradient(40rem 34rem at 16% 10%,rgba(139,124,255,.42),transparent 60%),radial-gradient(36rem 32rem at 88% 4%,rgba(77,214,193,.3),transparent 60%),radial-gradient(34rem 30rem at 94% 74%,rgba(236,72,153,.26),transparent 62%),radial-gradient(46rem 40rem at 72% 94%,rgba(139,124,255,.34),transparent 62%),radial-gradient(30rem 28rem at 2% 86%,rgba(77,214,193,.24),transparent 60%);animation:bg-drift 30s ease-in-out infinite alternate;will-change:transform}@keyframes bg-drift{0%{transform:translate3d(-2%,-1%,0) scale(1)}to{transform:translate3d(2%,2%,0) scale(1.08)}}@media(prefers-reduced-motion:reduce){body:before{animation:none}}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}h1,h2,h3{line-height:1.2;font-weight:700;letter-spacing:-.02em}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 1.25rem}.site-main{padding:3rem 0 4rem}.btn{position:relative;overflow:hidden;display:inline-block;padding:.6rem 1.3rem;border-radius:999px;font-weight:600;font-size:.95rem;border:1px solid rgba(255,255,255,.16);color:var(--text);background:linear-gradient(155deg,#ffffff1a,#ffffff08);-webkit-backdrop-filter:blur(10px) saturate(150%);backdrop-filter:blur(10px) saturate(150%);box-shadow:inset 0 1px #ffffff2e,0 4px 14px #00000040;transition:border-color .15s,transform .15s,box-shadow .15s}.btn:hover{text-decoration:none;border-color:color-mix(in srgb,var(--accent) 55%,rgba(255,255,255,.2));transform:translateY(-1px);box-shadow:inset 0 1px #ffffff3d,0 8px 22px #0000004d}.btn-primary{color:#14121f;border-color:#ffffff4d;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 95%,transparent),color-mix(in srgb,var(--accent) 76%,transparent));box-shadow:inset 0 1px #ffffff73,0 6px 20px var(--accent-glow)}.btn-primary:hover{background:linear-gradient(135deg,#9d90ff,color-mix(in srgb,var(--accent) 82%,transparent));box-shadow:inset 0 1px #ffffff80,0 10px 26px var(--accent-glow)}.btn:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.3) 50%,transparent 65%);background-size:220% 100%;background-position:150% 0;opacity:0;mix-blend-mode:screen}.btn:hover:after{animation:glass-sheen .9s ease forwards}@media(prefers-reduced-motion:reduce){.btn:hover:after{animation:none}}.chip{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-2);background:#4dd6c11a;border:1px solid rgba(77,214,193,.25);padding:.2rem .6rem;border-radius:999px}.card{display:block;position:relative;isolation:isolate;background:linear-gradient(155deg,#ffffff14,#ffffff06);-webkit-backdrop-filter:blur(16px) saturate(155%);backdrop-filter:blur(16px) saturate(155%);-webkit-backdrop-filter:blur(11px) saturate(155%) url(#liquid-glass-anim);backdrop-filter:blur(11px) saturate(155%) url(#liquid-glass-anim);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:1.4rem 1.5rem;box-shadow:0 8px 30px #0000004d,inset 1px 1px #fff3,inset -1px -1px #00000038,inset 0 0 22px #ffffff0a;transition:border-color .2s,transform .2s,box-shadow .2s}.card:hover{text-decoration:none;border-color:color-mix(in srgb,var(--accent) 50%,rgba(255,255,255,.1));transform:translateY(-2px);box-shadow:0 14px 40px #00000061,0 0 26px var(--accent-glow),inset 1px 1px #ffffff47,inset -1px -1px #00000040,inset 0 0 26px #ffffff0f}.card h3{margin:.2rem 0 .4rem;color:var(--text)}.card p{margin:0;color:var(--text-dim)}.card:after,.linkcard:after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.12) 48%,rgba(255,255,255,.22) 50%,rgba(255,255,255,.1) 52%,transparent 65%);background-size:220% 100%;background-position:150% 0;opacity:0;mix-blend-mode:screen}.card:hover:after,.linkcard:hover:after{animation:glass-sheen 1.1s ease forwards}@keyframes glass-sheen{0%{opacity:0;background-position:150% 0}18%{opacity:1}to{opacity:0;background-position:-60% 0}}@media(prefers-reduced-motion:reduce){.card:hover:after,.linkcard:hover:after{animation:none}.card{-webkit-backdrop-filter:blur(11px) saturate(155%) url(#liquid-glass);backdrop-filter:blur(11px) saturate(155%) url(#liquid-glass)}}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.card{background:var(--bg-card)}}.js-tilt{will-change:transform;transform-style:preserve-3d}.js-tilt:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:radial-gradient(16rem 16rem at var(--mx, 50%) var(--my, 50%),rgba(255,255,255,.18),transparent 55%);opacity:0;transition:opacity .25s ease}.js-tilt:hover:before{opacity:1}.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}html.reveal-ready .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}html.reveal-ready .reveal.is-visible{opacity:1;transform:none}html.reveal-ready :is(.reveal .reveal-items,.reveal.reveal-items)>*{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s cubic-bezier(.22,1,.36,1)}html.reveal-ready :is(.reveal.is-visible .reveal-items,.reveal.reveal-items.is-visible)>*{opacity:1;transform:none}html.reveal-ready :is(.reveal.is-visible .reveal-items,.reveal.reveal-items.is-visible)>:nth-child(1){transition-delay:.06s}html.reveal-ready :is(.reveal.is-visible .reveal-items,.reveal.reveal-items.is-visible)>:nth-child(2){transition-delay:.12s}html.reveal-ready :is(.reveal.is-visible .reveal-items,.reveal.reveal-items.is-visible)>:nth-child(3){transition-delay:.18s}html.reveal-ready :is(.reveal.is-visible .reveal-items,.reveal.reveal-items.is-visible)>:nth-child(4){transition-delay:.24s}html.reveal-ready :is(.reveal.is-visible .reveal-items,.reveal.reveal-items.is-visible)>:nth-child(5){transition-delay:.3s}html.reveal-ready :is(.reveal.is-visible .reveal-items,.reveal.reveal-items.is-visible)>:nth-child(6){transition-delay:.36s}html.reveal-ready :is(.reveal.is-visible .reveal-items,.reveal.reveal-items.is-visible)>:nth-child(n+7){transition-delay:.42s}.prose{font-size:1.05rem}.prose h2{margin-top:2.4rem}.prose h3{margin-top:1.8rem}.prose p,.prose ul,.prose ol{color:var(--text)}.prose code{font-family:var(--mono);font-size:.9em;background:var(--bg-soft);border:1px solid var(--border);padding:.1rem .35rem;border-radius:5px}.prose pre{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem;overflow-x:auto}.prose pre code{background:none;border:none;padding:0}.prose blockquote{margin:1.5rem 0;padding:.4rem 1.1rem;border-left:3px solid var(--accent);color:var(--text-dim)}.prose table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.92rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--border);padding:.55rem .7rem;text-align:left;vertical-align:top}.prose th{background:var(--bg-soft);font-weight:600}.prose tbody tr:nth-child(2n){background:#ffffff05}.muted{color:var(--text-dim)}.faint{color:var(--text-faint)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:700;color:var(--accent-2)}.site-header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(16px) saturate(170%);backdrop-filter:blur(16px) saturate(170%);background:#0e0f1399;box-shadow:0 6px 24px #00000038}.site-header[data-astro-cid-3ef6ksr2]:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 60%,transparent),color-mix(in srgb,var(--accent-2) 50%,transparent),transparent)}.bar[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.9rem;padding-bottom:.9rem}.brand[data-astro-cid-3ef6ksr2]{font-weight:800;font-size:1.15rem;letter-spacing:-.03em;color:var(--text)}.brand[data-astro-cid-3ef6ksr2]:hover{text-decoration:none}.brand[data-astro-cid-3ef6ksr2] span[data-astro-cid-3ef6ksr2]{color:var(--accent)}nav[data-astro-cid-3ef6ksr2]{display:flex;gap:.35rem;flex-wrap:wrap}.navlink[data-astro-cid-3ef6ksr2]{color:var(--text-dim);font-size:.92rem;font-weight:500;padding:.35rem .7rem;border-radius:8px}.navlink[data-astro-cid-3ef6ksr2]:hover{color:var(--text);text-decoration:none;background:var(--bg-soft)}.navlink[data-astro-cid-3ef6ksr2].active{color:var(--text);background:var(--bg-soft)}@media(max-width:560px){.bar[data-astro-cid-3ef6ksr2]{flex-wrap:wrap;row-gap:.5rem}.brand[data-astro-cid-3ef6ksr2]{font-size:1.1rem}nav[data-astro-cid-3ef6ksr2]{width:100%;justify-content:center;gap:.2rem}.navlink[data-astro-cid-3ef6ksr2]{font-size:.9rem;padding:.3rem .6rem}}.site-footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--border);margin-top:3rem;padding:1.8rem 0 1.4rem}.inner[data-astro-cid-sz7xmlte]{display:flex;align-items:center;justify-content:space-between;gap:1rem 1.5rem;flex-wrap:wrap}.links[data-astro-cid-sz7xmlte]{display:flex;gap:1.1rem;flex-wrap:wrap}.links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-dim);font-size:.9rem}.links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text)}.copy[data-astro-cid-sz7xmlte]{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.2rem;padding-top:1.1rem;border-top:1px solid var(--border);font-size:.85rem}.copy[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text)}@media(max-width:560px){.inner[data-astro-cid-sz7xmlte]{flex-direction:column;align-items:center;gap:.7rem}.links[data-astro-cid-sz7xmlte]{justify-content:center}.copy[data-astro-cid-sz7xmlte]{flex-direction:column;gap:.4rem;text-align:center}}
