:root{--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-soft:cubic-bezier(.4, 0, .2, 1)}html{scrollbar-gutter:stable}:where(a,button,summary,[role=button],[role=tab],input,select,textarea):where(:not([role=option])){transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,filter;transition-duration:.2s;transition-timing-function:var(--ease-soft)}.nav-progress{z-index:60;pointer-events:none;opacity:0;transform-origin:0;background:linear-gradient(90deg, hsl(var(--accent) / .35), hsl(var(--accent)));height:2px;box-shadow:0 0 12px hsl(var(--accent) / .55);position:fixed;inset:0 0 auto;transform:scaleX(0)}.nav-progress[data-state=run]{opacity:1;transition:transform 8s cubic-bezier(.05,.75,.1,1),opacity .16s linear;transform:scaleX(.82)}.nav-progress[data-state=done]{opacity:0;transition:transform .18s var(--ease-out), opacity .32s linear .16s;transform:scaleX(1)}[data-site-header]{transition:background-color .32s var(--ease-soft), box-shadow .32s var(--ease-soft)}[data-site-header][data-scrolled]{background-color:hsl(var(--bg) / .9);box-shadow:0 14px 34px -22px #000000f2}.tile-cover{transition:transform .7s var(--ease-out)}@media (hover:hover) and (pointer:fine){.tile:hover .tile-cover,.tile:focus-visible .tile-cover{transform:scale(1.035)}.tile:has(:focus-visible) .tile-cover{transform:scale(1.035)}}.badge-pop{animation:badge-pop .32s var(--ease-out) backwards}@keyframes badge-pop{0%{opacity:0;transform:scale(.4)}}.heart-on{animation:heart-pop .38s var(--ease-out)}@keyframes heart-pop{0%{transform:scale(.6)}55%{transform:scale(1.18)}to{transform:scale(1)}}.overlay-fade{animation:.26s ease-out backwards overlay-in}[data-closing]>.overlay-fade{animation:.2s ease-in both overlay-out}@keyframes overlay-in{0%{opacity:0}}@keyframes overlay-out{to{opacity:0}}.sheet-panel{animation:sheet-up .38s var(--ease-out) backwards}[data-closing]>.sheet-panel{animation:sheet-down .2s var(--ease-in) both}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes sheet-down{to{transform:translateY(100%)}}@media (min-width:640px){.sheet-panel{animation:dialog-in .3s var(--ease-out) backwards}[data-closing]>.sheet-panel{animation:dialog-out .18s var(--ease-in) both}}@keyframes dialog-in{0%{opacity:0;transform:translateY(14px)scale(.975)}}@keyframes dialog-out{to{opacity:0;transform:translateY(8px)scale(.985)}}.pop{animation:pop-in .2s var(--ease-out) backwards}.pop[data-closing]{animation:pop-out .14s var(--ease-in) both;pointer-events:none}@keyframes pop-in{0%{opacity:0;transform:translateY(-6px)scale(.97)}}@keyframes pop-out{to{opacity:0;transform:translateY(-4px)scale(.98)}}.fade-rise{animation:fade-rise .32s var(--ease-out) backwards}.fade-rise[data-closing]{animation:fade-sink .2s var(--ease-in) both;pointer-events:none}@keyframes fade-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes fade-sink{to{opacity:0;transform:translateY(var(--exit-y,-6px))}}.fade-in{animation:.32s ease-out backwards overlay-in}.unfold{grid-template-rows:1fr;grid-template-columns:minmax(0,1fr);display:grid}.unfold>*{min-width:0;min-height:0}.unfold[data-moving]>*{overflow:hidden}.unfold[data-moving=in]{animation:unfold-in .3s var(--ease-out) backwards}.unfold[data-moving=out]{animation:unfold-out .22s var(--ease-soft) both}@keyframes unfold-in{0%{opacity:0;margin-top:0;margin-bottom:calc(var(--unfold-gap,0px) * -1);grid-template-rows:0fr}}@keyframes unfold-out{to{opacity:0;margin-top:0;margin-bottom:calc(var(--unfold-gap,0px) * -1);grid-template-rows:0fr}}@media (prefers-reduced-motion:reduce){:where(a,button,summary,[role=button],[role=tab],input,select,textarea),[data-site-header],.tile-cover{transition-duration:.01ms}.tile:hover .tile-cover,.tile:focus-visible .tile-cover{transform:none}.tile:has(:focus-visible) .tile-cover{transform:none}.nav-progress[data-state]{transition:none}.badge-pop,.heart-on,.overlay-fade,[data-closing]>.overlay-fade,.sheet-panel,[data-closing]>.sheet-panel,.pop,.pop[data-closing],.fade-rise,.fade-rise[data-closing],.fade-in,.unfold[data-moving]{animation:none}}
