.appearance-dock{--dock-lift:0px;position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:calc(max(1rem, env(safe-area-inset-bottom)) + var(--dock-lift));z-index:40;display:flex;align-items:center;padding:3px;color:hsl(var(--foreground));background:hsl(var(--background)/.72);border:1px solid hsl(var(--foreground)/.14);border-radius:6px;box-shadow:0 8px 28px rgb(0 0 0/.12);backdrop-filter:blur(14px) saturate(120%);transition:transform .3s ease}.dark .appearance-dock{box-shadow:0 8px 28px rgb(0 0 0/.4)}.appearance-dock-cell{position:relative;display:grid;place-items:center;width:38px;height:38px;border-radius:4px;cursor:pointer;transition:background-color .15s ease}@media (hover:hover){.appearance-dock-cell:hover{background:hsl(var(--foreground)/.08)}}.appearance-dock-cell:focus-visible{outline:2px solid hsl(var(--foreground));outline-offset:-2px}.appearance-dock .appearance-dock-palette{display:none}.appearance-dock[data-open] .appearance-dock-palette{display:flex}.appearance-dock[data-open] .appearance-dock-toggle{display:none}@media (min-width:1024px) and (hover:hover) and (pointer:fine){.appearance-dock .appearance-dock-palette{display:flex}.appearance-dock .appearance-dock-toggle{display:none}}.appearance-dock-swatch{display:block;width:18px;height:18px;box-shadow:inset 0 0 0 1px hsl(var(--foreground)/.18);forced-color-adjust:none}:root:not([data-accent]) .appearance-dock-cell[data-swatch="0"]:before,:root[data-accent="1"] .appearance-dock-cell[data-swatch="1"]:before,:root[data-accent="2"] .appearance-dock-cell[data-swatch="2"]:before,:root[data-accent="3"] .appearance-dock-cell[data-swatch="3"]:before,:root[data-accent="4"] .appearance-dock-cell[data-swatch="4"]:before{content:"";position:absolute;inset:7px;--corner:hsl(var(--foreground));background:linear-gradient(var(--corner),var(--corner)) 0 0 /5px 2px,linear-gradient(var(--corner),var(--corner)) 0 0 /2px 5px,linear-gradient(var(--corner),var(--corner)) 100% 0 /5px 2px,linear-gradient(var(--corner),var(--corner)) 100% 0 /2px 5px,linear-gradient(var(--corner),var(--corner)) 0 100% /5px 2px,linear-gradient(var(--corner),var(--corner)) 0 100% /2px 5px,linear-gradient(var(--corner),var(--corner)) 100% 100% /5px 2px,linear-gradient(var(--corner),var(--corner)) 100% 100% /2px 5px;background-repeat:no-repeat;pointer-events:none}.appearance-dock-rule{width:1px;height:18px;margin:0 3px;background:hsl(var(--foreground)/.16)}.appearance-dock-theme svg{width:18px;height:18px;fill:currentColor}.appearance-dock-sun,.dark .appearance-dock-moon{display:none}.dark .appearance-dock-sun{display:block}@media (prefers-reduced-motion:no-preference){.appearance-dock[data-open] .appearance-dock-palette .appearance-dock-cell{animation:appearance-dock-pop .16s steps(3) both;animation-delay:calc(var(--swatch-index, 0) * 30ms)}@keyframes appearance-dock-pop{0%{opacity:0;transform:scale(.34)}}}@media (max-width:1023px){.appearance-dock[data-tucked]{transform:translateY(calc(100% + max(1rem, env(safe-area-inset-bottom)) + var(--dock-lift) + 8px))}[data-site-footer]{margin-top:3rem}}@media (prefers-reduced-motion:reduce){.appearance-dock,.appearance-dock-cell{transition:none}}@media print{.appearance-dock{display:none}}::view-transition,::view-transition-group(root),::view-transition-image-pair(root),::view-transition-new(root),::view-transition-old(root){pointer-events:none}::view-transition-group(root),::view-transition-new(root),::view-transition-old(root){animation:none;mix-blend-mode:normal}.navbar-sticky{transform:translateY(0);transition:transform .3s ease;will-change:transform;background-color:hsl(var(--secondary))}.navbar-sticky.translate-y-\[-100\%\]{transform:translateY(-100%)}.mobile-navbar{position:fixed;top:0;left:0;width:100%;z-index:50;background-color:hsl(var(--secondary));border-bottom:1px solid hsl(var(--border));transition:transform .3s ease}.mobile-navbar.hidden{transform:translateY(-100%)}.mobile-sidebar{position:fixed;top:0;right:0;height:100vh;width:75vw;max-width:300px;background-color:hsl(var(--background));z-index:60;transform:translateX(100%);transition:transform .3s cubic-bezier(.16,1,.3,1);box-shadow:-2px 0 10px rgba(0,0,0,.1);display:flex;flex-direction:column}.mobile-sidebar.open{transform:translateX(0)}.sidebar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);z-index:55;opacity:0;pointer-events:none;transition:opacity .3s ease;backdrop-filter:blur(2px)}.sidebar-overlay.open{opacity:1;pointer-events:auto}.mobile-sidebar-links{display:flex;flex-direction:column;padding:1.5rem;flex:1}.mobile-sidebar-link{font-size:1.125rem;padding:1rem 0;border-bottom:1px solid hsl(var(--border)/50%);transition:all .2s ease;display:flex;align-items:center}.mobile-sidebar-link:hover{padding-left:.5rem}.mobile-sidebar-footer{margin-top:auto;padding:1.5rem;border-top:1px solid hsl(var(--border)/50%)}.mobile-sidebar-content{opacity:0;transform:translateX(20px);transition:opacity .3s ease,transform .3s ease;transition-delay:.1s}.mobile-sidebar.open .mobile-sidebar-content{opacity:1;transform:translateX(0)}