:root{color-scheme:dark;--bg:#0a0a0f;--surface:#14141d;--surface-2:#1c1c28;--hairline:#262633;--edge:#5b5b70;--ink:#f2f2f7;--ink-muted:#9c9cb0;--signal:#a78bfa;--signal-strong:#8b5cf6;--on-signal:#14041f;--warn:#ff8f7a;--radius-control:10px;--radius-card:14px;--measure:44rem;--font:"Inter var", "Inter", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif}@media (prefers-color-scheme:light){:root{color-scheme:light;--bg:#fbfaff;--surface:#f2f0f9;--surface-2:#e9e6f4;--hairline:#ded9ec;--edge:#7c7a89;--ink:#15131c;--ink-muted:#56536a;--signal:#6d28d9;--signal-strong:#5b21b6;--on-signal:#fff;--warn:#b3301c}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.7}main{max-width:var(--measure);margin:0 auto;padding:0 1.25rem 5rem}main.wide{max-width:70rem}h1{letter-spacing:-.022em;margin:0 0 .5rem;font-size:clamp(1.85rem,5vw,2.6rem);font-weight:700;line-height:1.15}h2{letter-spacing:-.012em;margin:2.6rem 0 .75rem;font-size:clamp(1.25rem,2.6vw,1.45rem);font-weight:660;line-height:1.3}h3{margin:1.8rem 0 .5rem;font-size:1.08rem;font-weight:640}a{color:var(--signal);text-underline-offset:.18em}:focus-visible{outline:2px solid var(--signal);outline-offset:2px;border-radius:3px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.table-scroll{margin:1.5rem 0;overflow-x:auto}.table-scroll>table{margin:0}table{border-collapse:collapse;width:100%;margin:1.5rem 0;font-size:.94rem}th,td{text-align:left;border-bottom:1px solid var(--hairline);vertical-align:top;overflow-wrap:break-word;padding:.65rem .75rem}th{color:var(--ink-muted);letter-spacing:.01em;font-size:.84rem;font-weight:620}code{background:var(--surface-2);border-radius:5px;padding:.1em .36em;font-size:.89em}img{max-width:100%;height:auto}.wrap{max-width:var(--measure);margin:0 auto;padding:0 1.25rem}.wrap-wide{max-width:70rem;margin:0 auto;padding:0 1.25rem}.skip{background:var(--signal);color:var(--on-signal);border-radius:0 0 var(--radius-control) 0;z-index:10;padding:.6rem 1rem;position:absolute;top:0;left:-9999px}.skip:focus{left:0}.pill{border:1px solid var(--hairline);background:color-mix(in srgb, var(--surface) 70%, transparent);color:var(--ink-muted);border-radius:999px;align-items:center;gap:.55rem;margin:0 0 1.3rem;padding:.38rem .85rem .38rem .7rem;font-size:.8rem;font-weight:600;display:inline-flex}.pill__dot{background:var(--signal);width:8px;height:8px;box-shadow:0 0 0 4px color-mix(in srgb, var(--signal) 25%, transparent);border-radius:50%}.mark{background:linear-gradient(100deg,#d8ccff 0%,#a78bfa 45%,#7c3aed 100%);color:#0000;-webkit-background-clip:text;background-clip:text}@media (prefers-color-scheme:light){.mark{background-image:linear-gradient(100deg,#8b5cf6,#6d28d9 55%,#4c1d95)}}.btn{border-radius:999px;align-items:center;gap:.5rem;min-height:50px;padding:.75rem 1.4rem;font-size:.98rem;font-weight:650;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.btn--primary{background:linear-gradient(180deg, #9d74ff, var(--signal-strong) 60%, #6d28d9);color:#fff;box-shadow:0 10px 30px -8px color-mix(in srgb, var(--signal-strong) 70%, transparent), inset 0 1px 0 #ffffff40}.btn--primary:hover{box-shadow:0 16px 36px -8px color-mix(in srgb, var(--signal-strong) 80%, transparent), inset 0 1px 0 #ffffff40;transform:translateY(-2px)}.btn--ghost{border:1px solid var(--edge);color:var(--ink)}.btn--ghost:hover{background:var(--surface);transform:translateY(-2px)}.btn--disabled{color:var(--ink-muted);font-style:italic}.display{letter-spacing:-.03em;text-wrap:balance;max-width:22ch;margin:0 0 .8rem;font-size:clamp(1.8rem,3.6vw,2.6rem);font-weight:740;line-height:1.1}.section-lede{color:var(--ink-muted);max-width:46rem;margin:0 0 1.8rem}html.js .reveal{opacity:0;transition:opacity .8s,transform .9s cubic-bezier(.2,.7,.2,1);transform:translateY(26px)}html.js .reveal.in{opacity:1;transform:none}.glow{z-index:-1;pointer-events:none;background:radial-gradient(34rem 22rem at 78% 30%, color-mix(in srgb, var(--signal-strong) 24%, transparent), transparent 70%), radial-gradient(24rem 18rem at 12% 10%, color-mix(in srgb, var(--signal) 10%, transparent), transparent 70%);position:absolute;inset:-4rem calc(50% - 50vw) -2rem;-webkit-mask-image:linear-gradient(#000 45%,#0000);mask-image:linear-gradient(#000 45%,#0000)}.glow:after{content:"";background-image:radial-gradient(color-mix(in srgb, var(--ink) 16%, transparent) 1px, transparent 1.4px);opacity:.5;background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(55% 65% at 60% 35%,#000 15%,#0000 72%);mask-image:radial-gradient(55% 65% at 60% 35%,#000 15%,#0000 72%)}.page-hero{isolation:isolate;position:relative}.lib-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,13.5rem),1fr));gap:1.1rem;margin:0;padding:0;list-style:none;display:grid}.lib-card{color:var(--ink);text-decoration:none;display:block}.lib-card__paper{aspect-ratio:1;background:#fff;border-radius:18px;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s;display:block;position:relative;overflow:hidden;box-shadow:0 14px 34px -18px #0009,0 0 0 1px #140a280f}.lib-card:hover .lib-card__paper,.lib-card:focus-visible .lib-card__paper{box-shadow:0 0 0 2px color-mix(in srgb, var(--signal) 60%, transparent), 0 26px 50px -22px color-mix(in srgb, var(--signal-strong) 70%, transparent);transform:translateY(-4px)rotate(-.6deg)}.lib-card__paper img{object-fit:cover;border:0;border-radius:0;width:100%;height:100%;position:absolute;inset:0}.lib-card__photo{clip-path:inset(0 0 0 100%);transition:clip-path .7s cubic-bezier(.65,0,.35,1)}.lib-card:hover .lib-card__photo,.lib-card:focus-visible .lib-card__photo{clip-path:inset(0)}.lib-card__name{margin-top:.65rem;font-size:.95rem;font-weight:640;display:block}@media (prefers-reduced-motion:reduce){.lib-card__paper,.lib-card__photo{transition:none}html.js .reveal{opacity:1;transition:none;transform:none}}.site-header[data-astro-cid-hkbrpulz]{border-bottom:1px solid var(--hairline);z-index:5;background:color-mix(in srgb, var(--bg) 86%, transparent);backdrop-filter:blur(12px);position:sticky;top:0}.site-header__inner[data-astro-cid-hkbrpulz]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 1.1rem;padding-top:.25rem;padding-bottom:.25rem;display:flex}.site-header__brand[data-astro-cid-hkbrpulz]{letter-spacing:-.01em;color:var(--ink);align-items:center;gap:.5rem;min-height:44px;font-weight:700;text-decoration:none;display:inline-flex}.site-header__brand[data-astro-cid-hkbrpulz] img[data-astro-cid-hkbrpulz]{border-radius:6px}.site-header__nav[data-astro-cid-hkbrpulz]{flex-wrap:wrap;gap:0 1rem;font-size:.9rem;display:flex}@media (width<=46rem){.site-header__nav[data-astro-cid-hkbrpulz]{scrollbar-width:none;flex-wrap:nowrap;flex:1 0 100%;overflow-x:auto}.site-header__nav[data-astro-cid-hkbrpulz]::-webkit-scrollbar{display:none}.site-header__nav[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]{white-space:nowrap}}.site-header__nav[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]{color:var(--ink-muted);align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.site-header__nav[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]:hover{color:var(--ink)}.site-footer[data-astro-cid-hkbrpulz]{border-top:1px solid var(--hairline);color:var(--ink-muted);padding:2.5rem 0 3.5rem;font-size:.88rem}.site-footer__title[data-astro-cid-hkbrpulz]{color:var(--ink);margin:0 0 .4rem;font-weight:640}.site-footer__note[data-astro-cid-hkbrpulz]{max-width:44rem;margin:0}.site-footer__legal[data-astro-cid-hkbrpulz]{opacity:.8;margin:1.2rem 0 0;font-size:.8rem}.langs[data-astro-cid-hkbrpulz]{border-top:1px solid var(--hairline);flex-wrap:wrap;align-items:center;gap:.35rem .9rem;margin-top:1.2rem;padding-top:1rem;display:flex}.langs__label[data-astro-cid-hkbrpulz]{font-size:.8rem}.langs__list[data-astro-cid-hkbrpulz]{flex-wrap:wrap;gap:.3rem .95rem;margin:0;padding:0;list-style:none;display:flex}.langs[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]{color:var(--ink-muted);align-items:center;min-height:32px;text-decoration:none;display:inline-flex}.langs[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]:hover{color:var(--ink);text-decoration:underline}.langs[data-astro-cid-hkbrpulz] [data-astro-cid-hkbrpulz][aria-current]{color:var(--ink);font-weight:620}
