:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{margin:0 auto;overflow-x:hidden}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-5px)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.project-card{width:auto;height:auto;margin:1rem}.project-image{width:100%;height:auto;margin:0 0 -20px;border-radius:15px;transition:transform .4s cubic-bezier(.4,0,.2,1)}.project-image:hover{transform:rotate(-2deg) scale(1.08)}.glass-surface{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:opacity .26s ease-out}.glass-surface__filter{width:100%;height:100%;pointer-events:none;position:absolute;inset:0;opacity:0;z-index:-1}.glass-surface__content{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:.5rem;border-radius:inherit;position:relative;z-index:1}.glass-surface--svg{background:light-dark(hsl(0 0% 100% / var(--glass-frost, 0)),hsl(0 0% 0% / var(--glass-frost, 0)));-webkit-backdrop-filter:var(--filter-id, url(#glass-filter)) saturate(var(--glass-saturation, 1));backdrop-filter:var(--filter-id, url(#glass-filter)) saturate(var(--glass-saturation, 1));box-shadow:0 0 2px 1px light-dark(color-mix(in oklch,black,transparent 85%),color-mix(in oklch,white,transparent 65%)) inset,0 0 10px 4px light-dark(color-mix(in oklch,black,transparent 90%),color-mix(in oklch,white,transparent 85%)) inset,0 4px 16px #11111a0d,0 8px 24px #11111a0d,0 16px 56px #11111a0d,0 4px 16px #11111a0d inset,0 8px 24px #11111a0d inset,0 16px 56px #11111a0d inset}.glass-surface--fallback{background:#ffffff40;backdrop-filter:blur(12px) saturate(1.8) brightness(1.1);-webkit-backdrop-filter:blur(12px) saturate(1.8) brightness(1.1);border:1px solid rgba(255,255,255,.3);box-shadow:0 8px 32px #1f268733,0 2px 16px #1f26871a,inset 0 1px #fff6,inset 0 -1px #fff3}@media (prefers-color-scheme: dark){.glass-surface--fallback{background:#ffffff1a;backdrop-filter:blur(12px) saturate(1.8) brightness(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.8) brightness(1.2);border:1px solid rgba(255,255,255,.2);box-shadow:inset 0 1px #fff3,inset 0 -1px #ffffff1a}}@supports not (backdrop-filter: blur(10px)){.glass-surface--fallback{background:#fff6;box-shadow:inset 0 1px #ffffff80,inset 0 -1px #ffffff4d}.glass-surface--fallback:before{content:"";position:absolute;inset:0;background:#ffffff26;border-radius:inherit;z-index:-1}}@supports not (backdrop-filter: blur(10px)){@media (prefers-color-scheme: dark){.glass-surface--fallback{background:#0006}.glass-surface--fallback:before{background:#ffffff0d}}}.glass-surface:focus-visible{outline:2px solid light-dark(#007aff,#0a84ff);outline-offset:2px}.text-type{display:inline-block;white-space:pre-wrap}.text-type__cursor{margin-left:.25rem;display:inline-block;opacity:1}.text-type__cursor--hidden{display:none}.logoloop__item::marker{display:none;content:""}.logoloop{position:relative;overflow-x:hidden;--logoloop-gap: 32px;--logoloop-logoHeight: 28px;--logoloop-fadeColorAuto: #ffffff}.logoloop--scale-hover{padding-top:calc(var(--logoloop-logoHeight) * .1);padding-bottom:calc(var(--logoloop-logoHeight) * .1)}@media (prefers-color-scheme: dark){.logoloop{--logoloop-fadeColorAuto: #0b0b0b}}.logoloop__track{display:flex;width:max-content;will-change:transform;-webkit-user-select:none;user-select:none}.logoloop__list{display:flex;align-items:center}.logoloop__item{flex:0 0 auto;margin-right:var(--logoloop-gap);font-size:var(--logoloop-logoHeight);line-height:1}.logoloop__item:last-child{margin-right:0}.logoloop__node{display:inline-flex;align-items:center}.logoloop__item img{height:var(--logoloop-logoHeight);width:auto;display:block;object-fit:contain;image-rendering:-webkit-optimize-contrast;-webkit-user-drag:none;pointer-events:none;transition:transform .3s cubic-bezier(.4,0,.2,1)}.logoloop--scale-hover .logoloop__item{overflow:visible}.logoloop--scale-hover .logoloop__item:hover img,.logoloop--scale-hover .logoloop__item:hover .logoloop__node{transform:scale(1.2);transform-origin:center center}.logoloop--scale-hover .logoloop__node{transition:transform .3s cubic-bezier(.4,0,.2,1)}.logoloop__link{display:inline-flex;align-items:center;text-decoration:none;border-radius:4px;transition:opacity .2s ease}.logoloop__link:hover{opacity:.8}.logoloop__link:focus-visible{outline:2px solid currentColor;outline-offset:2px}.logoloop--fade:before,.logoloop--fade:after{content:"";position:absolute;top:0;bottom:0;width:clamp(24px,8%,120px);pointer-events:none;z-index:1}.logoloop--fade:before{left:0;background:linear-gradient(to right,var(--logoloop-fadeColor, var(--logoloop-fadeColorAuto)) 0%,rgba(0,0,0,0) 100%)}.logoloop--fade:after{right:0;background:linear-gradient(to left,var(--logoloop-fadeColor, var(--logoloop-fadeColorAuto)) 0%,rgba(0,0,0,0) 100%)}@media (prefers-reduced-motion: reduce){.logoloop__track{transform:translateZ(0)!important}.logoloop__item img,.logoloop__node{transition:none!important}}:root{--linear-ease: linear( 0, .068, .19 2.7%, .804 8.1%, 1.037, 1.199 13.2%, 1.245, 1.27 15.8%, 1.274, 1.272 17.4%, 1.249 19.1%, .996 28%, .949, .928 33.3%, .926, .933 36.8%, 1.001 45.6%, 1.013, 1.019 50.8%, 1.018 54.4%, 1 63.1%, .995 68%, 1.001 85%, 1 )}a{color:#fff!important}.gooey-nav-container{position:relative}.gooey-nav-container nav{display:flex;position:relative;transform:translateZ(.01px)}.gooey-nav-container nav ul{display:flex;gap:2em;list-style:none;padding:0 1em;margin:0;position:relative;z-index:3;color:#fff;text-shadow:0 1px 1px hsl(205deg 30% 10% / .2)}.gooey-nav-container nav ul li{border-radius:100vw;position:relative;cursor:pointer;transition:background-color .3s ease,color .3s ease,box-shadow .3s ease;box-shadow:0 0 .5px 1.5px transparent;color:#fff}.gooey-nav-container nav ul li a{display:inline-block;padding:.6em 1em}.gooey-nav-container nav ul li:focus-within:has(:focus-visible){box-shadow:0 0 .5px 1.5px #fff}.gooey-nav-container nav ul li:after{content:"";position:absolute;inset:0;border-radius:10px;background:#3b82f6;opacity:0;transform:scale(0);transition:all .3s ease;z-index:-1}.gooey-nav-container nav ul li.active{color:#000;text-shadow:none}.gooey-nav-container nav ul li.active:after{opacity:1;transform:scale(1);background:transparent}.gooey-nav-container .effect{position:absolute;left:0;top:0;width:0;height:0;opacity:1;pointer-events:none;display:grid;place-items:center;z-index:1}.gooey-nav-container .effect.text{color:"yellow"!important;transition:color .3s ease}.gooey-nav-container .effect.text.active{color:#000}.gooey-nav-container .effect.filter{filter:blur(7px) contrast(100) blur(0);mix-blend-mode:lighten}.gooey-nav-container .effect.filter:before{content:"";position:absolute;inset:-75px;z-index:-2}.gooey-nav-container .effect.filter:after{content:"";position:absolute;inset:0;background:#fff;transform:scale(0);opacity:0;z-index:-1;border-radius:100vw}.gooey-nav-container .effect.active:after{animation:pill .3s ease both}@keyframes pill{to{transform:scale(1);opacity:1}}.particle,.point{display:block;opacity:0;width:20px;height:20px;border-radius:100%;transform-origin:center}.particle{--time: 5s;position:absolute;top:calc(50% - 8px);left:calc(50% - 8px);animation:particle calc(var(--time)) ease 1 -.35s}.point{background:var(--color);opacity:1;animation:point calc(var(--time)) ease 1 -.35s}@keyframes particle{0%{transform:rotate(0) translate(calc(var(--start-x)),calc(var(--start-y)));opacity:1;animation-timing-function:cubic-bezier(.55,0,1,.45)}70%{transform:rotate(calc(var(--rotate) * .5)) translate(calc(var(--end-x) * 1.2),calc(var(--end-y) * 1.2));opacity:1;animation-timing-function:ease}85%{transform:rotate(calc(var(--rotate) * .66)) translate(calc(var(--end-x)),calc(var(--end-y)));opacity:1}to{transform:rotate(calc(var(--rotate) * 1.2)) translate(calc(var(--end-x) * .5),calc(var(--end-y) * .5));opacity:1}}@keyframes point{0%{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(.55,0,1,.45)}25%{transform:scale(calc(var(--scale) * .25))}38%{opacity:1}65%{transform:scale(var(--scale));opacity:1;animation-timing-function:ease}85%{transform:scale(var(--scale));opacity:1}to{transform:scale(0);opacity:0}}.darkveil-canvas{width:100%;height:100%;display:block}.dot-grid{display:flex;align-items:center;justify-content:center;height:100%;width:100%;position:relative}.dot-grid__wrap{width:100%;height:100%;position:relative}.dot-grid__canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
