.site-footer[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--line);color:var(--quiet);padding:2.5rem 0}.footer-inner[data-astro-cid-jo6i4kqk]{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}p[data-astro-cid-jo6i4kqk]{margin:0}nav[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;gap:1rem;display:flex}a[data-astro-cid-jo6i4kqk],button[data-astro-cid-jo6i4kqk]{color:var(--blue-light);cursor:pointer;font:inherit;text-underline-offset:.2rem;background:0 0;border:0;padding:0;text-decoration:underline}@media (width<=620px){.footer-inner[data-astro-cid-jo6i4kqk]{flex-direction:column;align-items:flex-start}}.site-header[data-astro-cid-nen7h5rs]{z-index:50;border-bottom:1px solid var(--line);backdrop-filter:blur(14px);background:#0f172aeb;position:sticky;top:0}.header-inner[data-astro-cid-nen7h5rs]{justify-content:space-between;align-items:center;gap:1rem;min-height:4.25rem;display:flex}.brand[data-astro-cid-nen7h5rs]{color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex:0 auto;font-size:1.15rem;font-weight:800;text-decoration:none;overflow:hidden}nav[data-astro-cid-nen7h5rs]{flex:none;align-items:center;gap:.35rem;display:flex}nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{min-height:2.75rem;color:var(--muted);border-radius:.4rem;align-items:center;padding:.5rem .8rem;font-weight:650;text-decoration:none;display:inline-flex}nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover{color:var(--blue-light)}nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--text);background:#ffffff14}@media (width<=470px){.brand[data-astro-cid-nen7h5rs]{font-size:1rem}nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{padding-inline:.65rem}nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:first-child{display:none}}:root{color-scheme:dark;--bg:#0f172a;--bg-soft:#1e293b;--surface:#ffffff0e;--surface-hover:#ffffff17;--line:#94a3b838;--text:#f8fafc;--muted:#cbd5e1;--quiet:#94a3b8;--blue:#60a5fa;--blue-light:#93c5fd;--purple:#a78bfa;--cyan:#5eead4;--mono:"JetBrains Mono", "SFMono-Regular", Consolas, monospace;--max:72rem;--reading:48rem;font-synthesis:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{min-width:320px;min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;background:linear-gradient(135deg,#0f172a 0%,#1e293b 50%,#0f172a 100%);margin:0;font-size:1rem;line-height:1.6}body:before{z-index:-1;content:"";pointer-events:none;background-image:linear-gradient(#60a5fa09 1px,#0000 1px),linear-gradient(90deg,#60a5fa09 1px,#0000 1px),radial-gradient(circle at 68% 12%,#3b82f61f,#0000 34rem);background-size:52px 52px,52px 52px,auto;position:fixed;inset:0}img{max-width:100%;height:auto;display:block}a{color:inherit}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--blue-light);outline-offset:3px}.container{width:min(var(--max), calc(100% - 2rem));margin-inline:auto}.reading-width{width:min(var(--reading), 100%);margin-inline:auto}.page{padding:clamp(4rem,8vw,7rem) 0}.page-header{text-align:center;max-width:48rem;margin:0 auto clamp(3rem,6vw,5rem)}.page-title,.gradient-title{color:#0000;background:linear-gradient(90deg, var(--blue), var(--purple));letter-spacing:-.05em;background-clip:text;margin:0;font-size:clamp(2.7rem,7vw,4.6rem);font-weight:800;line-height:1}.lede{color:var(--muted);margin:1.25rem auto 0;font-size:clamp(1.05rem,2.5vw,1.25rem)}.eyebrow{color:var(--cyan);font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;margin:0 0 1rem;font-size:.72rem;font-weight:750}.section{border-top:1px solid var(--line);padding:clamp(4rem,8vw,6.5rem) 0}.section-title{text-align:center;margin:0 0 2.5rem;font-size:clamp(2rem,5vw,2.75rem)}.gradient-text{color:#0000;background:linear-gradient(90deg, var(--blue), var(--purple));background-clip:text}.card{border:1px solid var(--line);background:var(--surface);backdrop-filter:blur(10px);border-radius:.85rem;padding:clamp(1.5rem,4vw,2.25rem)}.card:hover{background:var(--surface-hover)}.grid{gap:1.5rem;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.button-row{flex-wrap:wrap;justify-content:center;gap:.9rem;display:flex}.button{border:1px solid #0000;border-radius:.55rem;justify-content:center;align-items:center;min-height:3rem;padding:.7rem 1.25rem;font-weight:750;text-decoration:none;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:linear-gradient(90deg,#3b82f6,#2563eb)}.button-secondary{border-color:var(--line);background:#ffffff14}.tag-list{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.tag{color:var(--blue);font-size:.9rem;text-decoration:none}.tag:hover{color:var(--blue-light);text-decoration:underline}.muted{color:var(--muted)}.quiet{color:var(--quiet)}.skip-link{z-index:200;background:var(--blue);color:#07111f;border-radius:.35rem;padding:.65rem 1rem;font-weight:800;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.prose{color:var(--muted);font-size:1.075rem;line-height:1.8}.prose>:first-child{margin-top:0}.prose h1,.prose h2,.prose h3,.prose h4{color:var(--text);scroll-margin-top:6rem;line-height:1.25}.prose h1{font-size:2.2rem}.prose h2{border-bottom:1px solid var(--line);color:var(--blue-light);margin-top:2.8rem;padding-bottom:.45rem;font-size:1.8rem}.prose h3{color:#bfdbfe;margin-top:2.2rem;font-size:1.45rem}.prose h4{margin-top:1.8rem;font-size:1.2rem}.prose a{color:var(--blue-light);text-underline-offset:.2em}.prose strong{color:var(--text)}.prose blockquote{border-left:4px solid var(--blue);background:#1e293b8c;margin-inline:0;padding:.1rem 1.25rem}.prose pre{border-radius:.6rem;padding:1rem;overflow-x:auto}.prose code{font-size:.92em}.prose hr{border:0;border-top:1px solid var(--line);margin:3rem 0}@media (width<=760px){.grid-2,.grid-3{grid-template-columns:1fr}.page{padding-top:3.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
