.header[data-astro-cid-qlfjksao]{position:sticky;top:0;z-index:var(--z-sticky);background-color:var(--color-background);border-bottom:1px solid var(--color-border);padding:var(--space-3) 0}.nav[data-astro-cid-qlfjksao]{display:flex;align-items:center;justify-content:space-between}.logo[data-astro-cid-qlfjksao]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-decoration:none;transition:color var(--transition-fast)}.logo[data-astro-cid-qlfjksao]:hover{color:var(--color-accent)}.logo-text[data-astro-cid-qlfjksao]{display:inline-block}.mobile-menu-toggle[data-astro-cid-qlfjksao]{display:none;background:none;border:none;cursor:pointer;padding:var(--space-1);color:var(--color-text-primary)}.nav-links[data-astro-cid-qlfjksao]{display:flex;gap:var(--space-6);list-style:none;margin:0;padding:0}.nav-link[data-astro-cid-qlfjksao]{color:var(--color-text-secondary);text-decoration:none;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:color var(--transition-fast);position:relative}.nav-link[data-astro-cid-qlfjksao]:hover{color:var(--color-text-primary)}.nav-link[data-astro-cid-qlfjksao]:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background-color:var(--color-accent);transition:width var(--transition-base)}.nav-link[data-astro-cid-qlfjksao]:hover:after{width:100%}@media(max-width:768px){.mobile-menu-toggle[data-astro-cid-qlfjksao]{display:block}.nav-links[data-astro-cid-qlfjksao]{position:fixed;top:73px;right:0;width:100%;max-width:300px;flex-direction:column;gap:0;background-color:var(--color-background);border-left:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:var(--space-4);transform:translate(100%);transition:transform var(--transition-base);box-shadow:var(--shadow-lg)}.nav-links[data-astro-cid-qlfjksao].active{transform:translate(0)}.nav-links[data-astro-cid-qlfjksao] li[data-astro-cid-qlfjksao]{margin:0}.nav-link[data-astro-cid-qlfjksao]{display:block;padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--color-border)}.nav-link[data-astro-cid-qlfjksao]:after{display:none}}.footer[data-astro-cid-35ed7um5]{border-top:1px solid var(--color-border);padding:var(--space-8) 0;margin-top:var(--space-16)}.footer-content[data-astro-cid-35ed7um5]{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.copyright[data-astro-cid-35ed7um5]{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin:0}.footer-links[data-astro-cid-35ed7um5]{display:flex;gap:var(--space-4);flex-wrap:wrap;justify-content:center}.footer-link[data-astro-cid-35ed7um5]{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}.footer-link[data-astro-cid-35ed7um5]:hover{color:var(--color-accent)}@media(min-width:768px){.footer-content[data-astro-cid-35ed7um5]{flex-direction:row;justify-content:space-between}}:root{--color-background: #ffffff;--color-text-primary: #1a1a1a;--color-text-secondary: #666666;--color-text-tertiary: #999999;--color-border: #e5e5e5;--color-accent: #2563eb;--color-accent-hover: #1d4ed8;--font-size-xs: .8rem;--font-size-sm: .9rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.375rem;--font-size-2xl: 1.75rem;--font-size-3xl: 2.25rem;--font-size-4xl: 3rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--font-family-base: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2rem;--space-5: 2.5rem;--space-6: 3rem;--space-8: 4rem;--space-10: 5rem;--space-12: 6rem;--space-16: 8rem;--space-20: 10rem;--max-width-content: 1200px;--max-width-narrow: 800px;--max-width-wide: 1400px;--grid-columns-mobile: 4;--grid-columns-tablet: 8;--grid-columns-desktop: 12;--grid-gap: var(--space-4);--grid-gutter-mobile: 6vw;--grid-gutter-tablet: 5vw;--grid-gutter-desktop: 4vw;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-tooltip: 600}@media(prefers-color-scheme:dark){:root{--color-background: #0a0a0a;--color-text-primary: #f5f5f5;--color-text-secondary: #a3a3a3;--color-text-tertiary: #737373;--color-border: #262626;--color-accent: #3b82f6;--color-accent-hover: #60a5fa}}:root{--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-background);min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin-bottom:var(--space-2);color:var(--color-text-primary)}h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}@media(max-width:768px){h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}}p{margin-bottom:var(--space-3);color:var(--color-text-secondary)}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}strong,b{font-weight:var(--font-weight-semibold)}em,i{font-style:italic}ul,ol{margin-bottom:var(--space-3);padding-left:var(--space-4)}li{margin-bottom:var(--space-1);color:var(--color-text-secondary)}code,pre{font-family:var(--font-family-mono);font-size:var(--font-size-sm)}code{background-color:var(--color-border);padding:.125rem .375rem;border-radius:var(--radius-sm)}pre{background-color:var(--color-border);padding:var(--space-3);border-radius:var(--radius-md);overflow-x:auto;margin-bottom:var(--space-3)}pre code{background-color:transparent;padding:0}.container{max-width:var(--max-width-content);margin:0 auto;padding:0 var(--grid-gutter-mobile)}@media(min-width:768px){.container{padding:0 var(--grid-gutter-tablet)}}@media(min-width:1024px){.container{padding:0 var(--grid-gutter-desktop)}}.container-narrow{max-width:var(--max-width-narrow);margin:0 auto;padding:0 var(--grid-gutter-mobile)}.container-wide{max-width:var(--max-width-wide);margin:0 auto;padding:0 var(--grid-gutter-mobile)}.grid{display:grid;gap:var(--grid-gap)}.grid-auto{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-2{grid-template-columns:1fr}@media(min-width:768px){.grid-2{grid-template-columns:repeat(2,1fr)}}.grid-3{grid-template-columns:1fr}@media(min-width:768px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.grid-3{grid-template-columns:repeat(3,1fr)}}section{padding:var(--space-12) 0}@media(min-width:768px){section{padding:var(--space-16) 0}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.text-center{text-align:center}.text-balance{text-wrap:balance}.space-y-1>*+*{margin-top:var(--space-1)}.space-y-2>*+*{margin-top:var(--space-2)}.space-y-3>*+*{margin-top:var(--space-3)}.space-y-4>*+*{margin-top:var(--space-4)}img{max-width:100%;height:auto;display:block}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::selection{background-color:var(--color-accent);color:#fff}*{transition:background-color var(--transition-base),color var(--transition-base),border-color var(--transition-base)}main{min-height:calc(100vh - 200px)}
