*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}.skip-link{position:absolute;top:-100%;left:1rem;z-index:300;padding:.5rem 1rem;background:var(--text-1);color:var(--bg);border-radius:0 0 8px 8px;font-size:.875rem;font-weight:600;text-decoration:none;transition:top .2s}.skip-link:focus{top:0}:root{color-scheme:light dark;--bg: #07080a;--bg-card: #101111;--bg-card-2: #1b1c1e;--border: rgba(255,255,255,.06);--border-hover: rgba(255,255,255,.1);--hover: rgba(79,179,169,.08);--selected: rgba(79,179,169,.15);--text-1: #F0EBE0;--text-2: #9c9c9d;--text-3: #6a6b6c;--accent: #4FB3A9;--accent-muted: #3E928A;--accent-subtle: rgba(79,179,169,.1);--accent-pastel: #BED9D7;--accent-on: #07080a;--sans: "Inter", "Inter Fallback", system-ui, -apple-system, sans-serif;--body: "Inter", "Inter Fallback", system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Monaco, monospace}@media(prefers-color-scheme:light){:root{--bg: #FBFBFA;--bg-card: #FFFFFF;--bg-card-2: #F7F6F3;--border: rgba(0,0,0,.06);--border-hover: rgba(0,0,0,.12);--hover: rgba(190,217,215,.25);--selected: rgba(190,217,215,.45);--text-1: #2F3437;--text-2: #787774;--text-3: #B4B4B0;--accent: #2F7F78;--accent-muted: #1F5F59;--accent-subtle: rgba(47,127,120,.1);--accent-on: #FFFFFF}}html{scroll-behavior:smooth}body{font-family:var(--body);background:var(--bg);color:var(--text-1);font-feature-settings:"calt" 1,"kern" 1,"liga" 1,"ss03" 1;-webkit-font-smoothing:antialiased;overflow-x:hidden}.logo-light:where(.astro-jmiypkdg){display:none}@media(prefers-color-scheme:light){.logo-dark:where(.astro-jmiypkdg){display:none}.logo-light:where(.astro-jmiypkdg){display:inline}}#nav:where(.astro-jmiypkdg){position:fixed;inset:0 0 auto;z-index:100;padding:0 2rem;height:3.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid transparent;transition:border-color .3s,background .3s,backdrop-filter .3s}#nav:where(.astro-jmiypkdg).frosted{border-color:var(--border);background:light-dark(rgba(251,251,250,.88),rgba(7,8,10,.88));backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.nav-logo:where(.astro-jmiypkdg){display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--text-1);font-size:.9375rem;font-weight:600;letter-spacing:-.01em}.nav-links:where(.astro-jmiypkdg){display:flex;align-items:center;gap:.125rem}.nav-link:where(.astro-jmiypkdg){padding:.375rem .75rem;color:var(--text-2);text-decoration:none;font-size:.875rem;font-weight:400;border-radius:6px;transition:color .15s,background .15s}.nav-link:where(.astro-jmiypkdg):hover{color:var(--text-1);background:light-dark(rgba(0,0,0,.05),rgba(255,255,255,.05))}.nav-icon-link:where(.astro-jmiypkdg){display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin-left:.25rem;color:var(--text-2);border-radius:6px;transition:color .15s,background .15s}.nav-cta:where(.astro-jmiypkdg){display:inline-flex;align-items:center;margin-left:.5rem;padding:.375rem .875rem;background:var(--accent);color:var(--accent-on);text-decoration:none;font-size:.8125rem;font-weight:600;letter-spacing:.01em;border-radius:7px;transition:background .15s,transform .12s;white-space:nowrap;touch-action:manipulation}@media(hover:hover){.nav-cta:where(.astro-jmiypkdg):hover{background:var(--accent-muted)}}.nav-cta:where(.astro-jmiypkdg):active{transform:scale(.97)}.nav-cta:where(.astro-jmiypkdg):focus-visible{outline:2px solid var(--accent);outline-offset:3px}.nav-icon-link:where(.astro-jmiypkdg):hover{color:var(--text-1);background:light-dark(rgba(0,0,0,.05),rgba(255,255,255,.05))}.nav-toggle:where(.astro-jmiypkdg){display:none;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;background:transparent;border:none;color:var(--text-2);border-radius:6px;cursor:pointer;transition:color .15s,background .15s;flex-shrink:0}.nav-toggle:where(.astro-jmiypkdg):hover{color:var(--text-1);background:light-dark(rgba(0,0,0,.05),rgba(255,255,255,.05))}@media(max-width:640px){.nav-toggle:where(.astro-jmiypkdg){display:flex}.nav-links:where(.astro-jmiypkdg){display:none;position:absolute;top:3.5rem;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:.5rem;background:light-dark(rgba(251,251,250,.96),rgba(7,8,10,.96));backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid var(--border)}.nav-links:where(.astro-jmiypkdg).open{display:flex}.nav-link:where(.astro-jmiypkdg){padding:.625rem .875rem;border-radius:6px}.nav-icon-link:where(.astro-jmiypkdg){width:auto;height:auto;margin-left:0;padding:.625rem .875rem;border-radius:6px;justify-content:flex-start;gap:.5rem}.nav-icon-link:where(.astro-jmiypkdg):after{content:"GitHub";font-size:.875rem}}.site-footer:where(.astro-qa6fgxkw){border-top:1px solid var(--border);padding:2rem}.footer-inner:where(.astro-qa6fgxkw){max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.footer-copy:where(.astro-qa6fgxkw){font-size:.8125rem;color:var(--text-3);letter-spacing:.1px;margin:0}.footer-social:where(.astro-qa6fgxkw){display:flex;align-items:center;gap:.25rem}.social-link:where(.astro-qa6fgxkw){display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;color:var(--text-3);border-radius:6px;transition:color .15s,background .15s}.social-link:where(.astro-qa6fgxkw):hover{color:var(--text-1);background:light-dark(rgba(0,0,0,.05),rgba(255,255,255,.05))}
