.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}:root,html[data-theme=light]{--background: oklch(.9818 .0054 95.0986);--foreground: oklch(.3438 .0269 95.7226);--card: oklch(.9818 .0054 95.0986);--card-foreground: oklch(.1908 .002 106.5859);--primary: oklch(.6171 .1375 39.0427);--primary-foreground: oklch(1 0 0);--secondary: oklch(.9245 .0138 92.9892);--secondary-foreground: oklch(.4334 .0177 98.6048);--muted: oklch(.9341 .0153 90.239);--muted-foreground: oklch(.6059 .0075 97.4233);--border: oklch(.8847 .0069 97.3627)}html[data-theme=dark]{--background: oklch(.2679 .0036 106.6427);--foreground: oklch(.8074 .0142 93.0137);--card: oklch(.2679 .0036 106.6427);--card-foreground: oklch(.9818 .0054 95.0986);--primary: oklch(.6724 .1308 38.7559);--primary-foreground: oklch(1 0 0);--secondary: oklch(.9818 .0054 95.0986);--secondary-foreground: oklch(.3085 .0035 106.6039);--muted: oklch(.2213 .0038 106.707);--muted-foreground: oklch(.7713 .0169 99.0657);--border: oklch(.3618 .0101 106.8928)}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background-color:var(--background);color:var(--foreground);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{flex:1}section,footer{margin-left:auto;margin-right:auto;width:100%;max-width:100vw;padding-left:1rem;padding-right:1rem}@media (min-width: 640px){body{font-size:17px}section,footer{padding-left:1.5rem;padding-right:1.5rem;max-width:95vw}}@media (min-width: 768px){section,footer{padding-left:2rem;padding-right:2rem;max-width:90vw}}@media (min-width: 1024px){section,footer{max-width:85vw}}@media (min-width: 1280px){section,footer{max-width:80vw}}@media (min-width: 1536px){section,footer{max-width:75vw}}h1,h2,h3{margin:0;font-weight:600;line-height:1.2}a{color:var(--primary);text-decoration:none;transition:color .2s}.animate-on-scroll,.animate-fade-up,.animate-fade-in,.animate-slide-in,.animate-scale-in{opacity:0}img{max-width:100%;height:auto;display:block}.video-container{position:relative;width:100%;max-width:95vw;margin:0 auto}@media (min-width: 768px){.video-container{max-width:85vw}}@media (min-width: 1024px){.video-container{max-width:75vw}}.video-container video{width:100%;border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a}.bg-background{background-color:var(--background)}.text-foreground{color:var(--foreground)}.text-primary{color:var(--primary)}.bg-card{background-color:var(--card)}.text-card-foreground{color:var(--card-foreground)}.border-border{border-color:var(--border)}.grid{display:grid;gap:1rem}@media (min-width: 640px){.grid{gap:1.5rem}.sm\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 768px){.grid{gap:2rem}.md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1024px){.lg\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1280px){.xl\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}:root,html[data-theme=light]{--background: oklch(.9818 .0054 95.0986);--foreground: oklch(.3438 .0269 95.7226);--card: oklch(.9818 .0054 95.0986);--card-foreground: oklch(.1908 .002 106.5859);--popover: oklch(1 0 0);--popover-foreground: oklch(.2671 .0196 98.939);--primary: oklch(.6171 .1375 39.0427);--primary-foreground: oklch(1 0 0);--secondary: oklch(.9245 .0138 92.9892);--secondary-foreground: oklch(.4334 .0177 98.6048);--muted: oklch(.9341 .0153 90.239);--muted-foreground: oklch(.6059 .0075 97.4233);--accent: oklch(.9245 .0138 92.9892);--accent-foreground: oklch(.2671 .0196 98.939);--destructive: oklch(.1908 .002 106.5859);--destructive-foreground: oklch(1 0 0);--border: oklch(.8847 .0069 97.3627);--input: oklch(.7621 .0156 98.3528);--ring: oklch(.6171 .1375 39.0427);--sidebar: oklch(.9663 .008 98.8792);--sidebar-foreground: oklch(.359 .0051 106.6524);--sidebar-primary: oklch(.6171 .1375 39.0427);--sidebar-primary-foreground: oklch(.9881 0 0);--sidebar-accent: oklch(.9245 .0138 92.9892);--sidebar-accent-foreground: oklch(.325 0 0);--sidebar-border: oklch(.9401 0 0);--sidebar-ring: oklch(.7731 0 0);--chart-1: oklch(.5583 .1276 42.9956);--chart-2: oklch(.6898 .1581 290.4107);--chart-3: oklch(.8816 .0276 93.128);--chart-4: oklch(.8822 .0403 298.1792);--chart-5: oklch(.5608 .1348 42.0584);--font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius: .5rem;--shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / .05);--shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 1px 2px -1px hsl(0 0% 0% / .1);--shadow-md: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 2px 4px -1px hsl(0 0% 0% / .1);--shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 4px 6px -1px hsl(0 0% 0% / .1);--shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 8px 10px -1px hsl(0 0% 0% / .1);--shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / .25);--color-fill: 250, 250, 252;--color-text-base: 17, 24, 39;--color-accent: 98, 114, 164;--color-card: 255, 255, 255;--color-card-muted: 249, 250, 251;--color-border: 229, 231, 235;--color-gradient-start: 98, 114, 164;--color-gradient-end: 71, 85, 105;--color-secondary: 75, 85, 99;--color-success: 16, 185, 129;--color-warning: 251, 146, 60;--color-glow: 98, 114, 164;--color-shadow: 0, 0, 0}html[data-theme=dark]{--background: oklch(.2679 .0036 106.6427);--foreground: oklch(.8074 .0142 93.0137);--card: oklch(.2679 .0036 106.6427);--card-foreground: oklch(.9818 .0054 95.0986);--popover: oklch(.3085 .0035 106.6039);--popover-foreground: oklch(.9211 .004 106.4781);--primary: oklch(.6724 .1308 38.7559);--primary-foreground: oklch(1 0 0);--secondary: oklch(.9818 .0054 95.0986);--secondary-foreground: oklch(.3085 .0035 106.6039);--muted: oklch(.2213 .0038 106.707);--muted-foreground: oklch(.7713 .0169 99.0657);--accent: oklch(.213 .0078 95.4245);--accent-foreground: oklch(.9663 .008 98.8792);--destructive: oklch(.6368 .2078 25.3313);--destructive-foreground: oklch(1 0 0);--border: oklch(.3618 .0101 106.8928);--input: oklch(.4336 .0113 100.2195);--ring: oklch(.6724 .1308 38.7559);--sidebar: oklch(.2357 .0024 67.7077);--sidebar-foreground: oklch(.8074 .0142 93.0137);--sidebar-primary: oklch(.325 0 0);--sidebar-primary-foreground: oklch(.9881 0 0);--sidebar-accent: oklch(.168 .002 106.6177);--sidebar-accent-foreground: oklch(.8074 .0142 93.0137);--sidebar-border: oklch(.9401 0 0);--sidebar-ring: oklch(.7731 0 0);--chart-1: oklch(.5583 .1276 42.9956);--chart-2: oklch(.6898 .1581 290.4107);--chart-3: oklch(.213 .0078 95.4245);--chart-4: oklch(.3074 .0516 289.323);--chart-5: oklch(.5608 .1348 42.0584)}.bg-theme-background{background-color:hsl(var(--background))}.bg-theme-card{background-color:hsl(var(--card))}.bg-theme-popover{background-color:hsl(var(--popover))}.bg-theme-primary{background-color:hsl(var(--primary))}.bg-theme-secondary{background-color:hsl(var(--secondary))}.bg-theme-muted{background-color:hsl(var(--muted))}.bg-theme-accent{background-color:hsl(var(--accent))}.bg-theme-destructive{background-color:hsl(var(--destructive))}.bg-theme-sidebar{background-color:hsl(var(--sidebar))}.text-theme-foreground{color:hsl(var(--foreground))}.text-theme-card-foreground{color:hsl(var(--card-foreground))}.text-theme-popover-foreground{color:hsl(var(--popover-foreground))}.text-theme-primary{color:hsl(var(--primary))}.text-theme-primary-foreground{color:hsl(var(--primary-foreground))}.text-theme-secondary{color:hsl(var(--secondary))}.text-theme-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-theme-muted{color:hsl(var(--muted))}.text-theme-muted-foreground{color:hsl(var(--muted-foreground))}.text-theme-accent{color:hsl(var(--accent))}.text-theme-accent-foreground{color:hsl(var(--accent-foreground))}.text-theme-destructive{color:hsl(var(--destructive))}.text-theme-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-theme-sidebar{color:hsl(var(--sidebar))}.text-theme-sidebar-foreground{color:hsl(var(--sidebar-foreground))}.border-theme-border{border-color:hsl(var(--border))}.border-theme-input{border-color:hsl(var(--input))}.border-theme-ring{border-color:hsl(var(--ring))}.border-theme-sidebar-border{border-color:hsl(var(--sidebar-border))}.ring-theme-ring{--tw-ring-color: hsl(var(--ring))}.chart-color-1{color:hsl(var(--chart-1))}.chart-color-2{color:hsl(var(--chart-2))}.chart-color-3{color:hsl(var(--chart-3))}.chart-color-4{color:hsl(var(--chart-4))}.chart-color-5{color:hsl(var(--chart-5))}.chart-bg-1{background-color:hsl(var(--chart-1))}.chart-bg-2{background-color:hsl(var(--chart-2))}.chart-bg-3{background-color:hsl(var(--chart-3))}.chart-bg-4{background-color:hsl(var(--chart-4))}.chart-bg-5{background-color:hsl(var(--chart-5))}.about-page{width:100%;padding:2rem 1rem;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--background) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.about-header{margin-bottom:3rem;text-align:center;border-radius:.75rem;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent);padding:2rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);margin-left:auto;margin-right:auto}.about-header img{border-radius:9999px;border-width:4px;border-color:color-mix(in srgb,var(--primary) 20%,transparent);--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.about-header img:hover{border-color:color-mix(in srgb,var(--primary) 40%,transparent);--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.about-header h1{font-size:2.25rem;line-height:2.5rem;font-weight:700;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);margin-bottom:1rem;background:linear-gradient(to right,hsl(var(--primary)),hsl(var(--primary)));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-header .title{font-size:1.25rem;line-height:1.75rem;font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);margin-bottom:.5rem}.about-header .subtitle{font-size:1.125rem;line-height:1.75rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) NaN%,transparent);margin-left:auto;margin-right:auto}.about-section{margin-bottom:3rem;border-radius:.75rem;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent);padding:2rem;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;margin-left:auto;margin-right:auto}.about-section:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);border-color:color-mix(in srgb,var(--primary) 20%,transparent)}.about-section h2{font-size:1.875rem;line-height:2.25rem;font-weight:700;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);margin-bottom:1.5rem;border-bottom-width:2px;border-color:color-mix(in srgb,var(--primary) 30%,transparent);padding-bottom:.5rem}.about-section h3{font-size:1.5rem;line-height:2rem;font-weight:600;color:color-mix(in srgb,var(--foreground) NaN%,transparent);margin-bottom:1rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent)}.about-section h4{font-size:1.25rem;line-height:1.75rem;font-weight:500;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);margin-bottom:.75rem}.about-content{color:color-mix(in srgb,var(--foreground) 90%,transparent);line-height:1.625}.about-content>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.about-content{width:100%}.about-content p{font-size:1.125rem;line-height:1.75rem;margin-bottom:1rem}.about-content strong{font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.about-content em{font-style:italic;color:color-mix(in srgb,var(--foreground) 80%,transparent)}.about-table{margin-top:2rem;margin-bottom:2rem;width:100%;border-collapse:collapse;overflow:hidden;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent);--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);max-width:100%}.about-table th{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) NaN%,transparent);font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);border-bottom-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);padding:1rem;text-align:left}.about-table td{border-bottom-width:1px;border-color:color-mix(in srgb,var(--border) 50%,transparent);padding:1rem;color:color-mix(in srgb,var(--foreground) 90%,transparent)}.about-table tr:hover{background-color:color-mix(in srgb,var(--muted) 50%,transparent)}.about-content ul,.about-content ol{margin-bottom:1.5rem}.about-content ul>:not([hidden])~:not([hidden]),.about-content ol>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.about-content ul,.about-content ol{color:color-mix(in srgb,var(--foreground) 90%,transparent);padding-left:1.5rem}.about-content li{color:color-mix(in srgb,var(--foreground) 90%,transparent);margin-bottom:.5rem}.about-content li::marker{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent)}.about-content a{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent)}.about-content a:hover{color:color-mix(in srgb,var(--primary) 80%,transparent)}.about-content a{text-decoration-line:underline;text-underline-offset:2px;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;text-decoration-color:hsl(var(--primary) / .3)}.about-content a:hover{text-decoration-color:hsl(var(--primary) / .6)}.about-content code{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);border-radius:.25rem;padding:.25rem .5rem;font-family:JetBrains Mono,SF Mono,Monaco,Cascadia Code,Roboto Mono,Source Code Pro,Fira Code,Consolas,Courier New,monospace;font-size:.875rem;line-height:1.25rem;border-width:1px;border-color:color-mix(in srgb,var(--border) 50%,transparent)}.about-content pre{border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent);border-radius:.75rem;padding:1.5rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);margin-top:2rem;margin-bottom:2rem;overflow-x:auto}.about-content pre code{border-style:none;background-color:transparent;padding:0;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.about-content blockquote{border-left-width:4px;border-color:color-mix(in srgb,var(--primary) 60%,transparent);background-color:color-mix(in srgb,var(--primary) 5%,transparent);margin-top:2rem;margin-bottom:2rem;border-top-right-radius:.5rem;border-bottom-right-radius:.5rem;padding-top:1rem;padding-bottom:1rem;padding-left:1.5rem;font-style:italic;color:color-mix(in srgb,var(--foreground) 80%,transparent)}.about-cta{margin-top:3rem;text-align:center;background:linear-gradient(to right,hsl(var(--primary)),hsl(var(--secondary)));border-radius:.75rem;border-width:1px;border-color:color-mix(in srgb,var(--primary) 20%,transparent);padding:2rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);margin-left:auto;margin-right:auto;max-width:72rem}.about-cta h3{font-size:1.5rem;line-height:2rem;font-weight:700;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);margin-bottom:1rem}.about-cta p{font-size:1.125rem;line-height:1.75rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) NaN%,transparent);margin-bottom:1.5rem}.about-cta .cta-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}.about-cta .cta-links a{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) NaN%,transparent)}.about-cta .cta-links a:hover{background-color:color-mix(in srgb,var(--primary) 90%,transparent)}.about-cta .cta-links a{border-radius:.5rem;padding:.75rem 1.5rem;font-weight:600;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.about-cta .cta-links a:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.about-cta .cta-links a{text-decoration-line:none}.about-cta .cta-links a:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.chatbot-container{position:fixed;bottom:1.5rem;right:1.5rem;z-index:50}.chatbot-toggle{border-radius:9999px;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent);padding:1rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) NaN%,transparent);--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.chatbot-toggle:hover{background-color:color-mix(in srgb,var(--primary) 90%,transparent)}.chatbot-toggle{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.chatbot-toggle:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.chatbot-toggle:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.chatbot-toggle:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: color-mix(in srgb, var(--primary) NaN%, transparent);--tw-ring-offset-width: 2px}.chatbot-toggle{box-shadow:0 10px 25px hsl(var(--primary) / .3)}.chatbot-toggle:hover{box-shadow:0 15px 35px hsl(var(--primary) / .4)}.chatbot-window{position:absolute;bottom:4rem;right:0;height:32rem;width:24rem;border-radius:1rem;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent);display:flex;flex-direction:column;overflow:hidden;--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);box-shadow:0 25px 50px -12px hsl(var(--shadow) / .25)}.chatbot-header{display:flex;align-items:center;gap:.75rem;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent);padding:1rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) NaN%,transparent)}.chatbot-messages{flex:1 1 0%}.chatbot-messages>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.chatbot-messages{overflow-y:auto;padding:1rem}.chatbot-message{max-width:80%;border-radius:1rem;padding:.75rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.chatbot-message--bot{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.chatbot-message--user{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) NaN%,transparent)}.chatbot-input-container{border-top-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);padding:1rem}.chatbot-input{flex:1 1 0%;border-radius:9999px;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);padding:.5rem 1rem}.chatbot-input:focus{border-color:transparent;outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: color-mix(in srgb, var(--primary) NaN%, transparent)}.chatbot-input{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--background) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.chatbot-input::-moz-placeholder{--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) NaN%,transparent)}.chatbot-input::placeholder{--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) NaN%,transparent)}.chatbot-input{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.chatbot-send-button{border-radius:9999px;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent);padding:.5rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) NaN%,transparent)}.chatbot-send-button:hover{background-color:color-mix(in srgb,var(--primary) 90%,transparent)}.chatbot-send-button{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.chatbot-send-button:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: color-mix(in srgb, var(--primary) NaN%, transparent);--tw-ring-offset-width: 2px}.chatbot-send-button:disabled{cursor:not-allowed;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) NaN%,transparent)}html[data-theme=dark] .chatbot-window{box-shadow:0 25px 50px -12px hsl(var(--shadow) / .5)}.btn-theme-primary{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s ease-in-out}.btn-theme-primary:hover{background-color:hsl(var(--primary) / .9)}.btn-theme-secondary{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s ease-in-out}.btn-theme-secondary:hover{background-color:hsl(var(--secondary) / .8)}.btn-theme-destructive{background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground));border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s ease-in-out}.btn-theme-destructive:hover{background-color:hsl(var(--destructive) / .9)}.btn-theme-outline{border:1px solid hsl(var(--input));background-color:hsl(var(--background));color:hsl(var(--foreground));border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s ease-in-out}.btn-theme-outline:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.btn-theme-ghost{background-color:transparent;color:hsl(var(--foreground));border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s ease-in-out}.btn-theme-ghost:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.card-theme{border-radius:.5rem;border:1px solid hsl(var(--border));background-color:hsl(var(--card));color:hsl(var(--card-foreground));box-shadow:0 1px 3px #0000001a}.input-theme{display:flex;height:2.5rem;width:100%;border-radius:.5rem;border:1px solid hsl(var(--input));background-color:hsl(var(--background));padding:.5rem .75rem;font-size:.875rem;transition:all .2s ease-in-out}.input-theme:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .2)}.input-theme::-moz-placeholder{color:hsl(var(--muted-foreground))}.input-theme::placeholder{color:hsl(var(--muted-foreground))}.badge-theme-default{border:1px solid transparent;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-radius:9999px;padding:.25rem .5rem;font-size:.75rem;font-weight:600;transition:all .2s ease-in-out}.badge-theme-default:hover{background-color:hsl(var(--primary) / .8)}.badge-theme-secondary{border:1px solid transparent;background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-radius:9999px;padding:.25rem .5rem;font-size:.75rem;font-weight:600;transition:all .2s ease-in-out}.badge-theme-secondary:hover{background-color:hsl(var(--secondary) / .8)}.badge-theme-destructive{border:1px solid transparent;background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground));border-radius:9999px;padding:.25rem .5rem;font-size:.75rem;font-weight:600;transition:all .2s ease-in-out}.badge-theme-destructive:hover{background-color:hsl(var(--destructive) / .8)}.badge-theme-outline{color:hsl(var(--foreground))}.theme-transition{transition:background-color .3s ease,border-color .3s ease,color .3s ease}@media (max-width: 640px){.theme-mobile{--radius: .375rem}.about-page{padding-left:.5rem;padding-right:.5rem}.about-header{margin-left:.5rem;margin-right:.5rem;padding:1rem}.about-header h1{font-size:1.875rem;line-height:2.25rem}.about-section{margin-left:.5rem;margin-right:.5rem;padding:1rem}.about-section h2{font-size:1.5rem;line-height:2rem}.about-cta{margin-left:.5rem;margin-right:.5rem}.about-cta .cta-links{flex-direction:column}}@media (min-width: 641px) and (max-width: 1024px){.about-page{padding-left:1.5rem;padding-right:1.5rem}.about-header,.about-section,.about-cta{margin-left:1rem;margin-right:1rem}}@media (min-width: 1025px){.about-page{padding-left:2rem;padding-right:2rem}.about-header,.about-section,.about-cta{margin-left:auto;margin-right:auto}}.blog-post-theme{--post-max-width: 65ch;--post-line-height: 1.75;--post-paragraph-spacing: 1.5rem;--post-heading-spacing: 2rem}.blog-post-theme .prose{max-width:var(--post-max-width);line-height:var(--post-line-height)}.blog-post-theme .prose p{margin-bottom:var(--post-paragraph-spacing)}.blog-post-theme .prose h1,.blog-post-theme .prose h2,.blog-post-theme .prose h3,.blog-post-theme .prose h4,.blog-post-theme .prose h5,.blog-post-theme .prose h6{margin-top:var(--post-heading-spacing);margin-bottom:calc(var(--post-heading-spacing) * .5)}.markdown-content{--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);line-height:1.625;max-width:none}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);scroll-margin-top:5rem;margin-bottom:1rem}.markdown-content h1{margin-top:3rem;margin-bottom:2rem;font-size:2.25rem;line-height:2.5rem;font-weight:700;letter-spacing:-.03em}.markdown-content h2{margin-top:2.5rem;margin-bottom:1.5rem;font-size:1.875rem;line-height:2.25rem;font-weight:600;letter-spacing:-.02em}.markdown-content h3{margin-top:2rem;margin-bottom:1rem;font-size:1.5rem;line-height:2rem;font-weight:500;letter-spacing:-.01em}.markdown-content p{margin-bottom:1.5rem;color:color-mix(in srgb,var(--foreground) 90%,transparent);font-size:1.125rem;line-height:1.75rem;line-height:1.625}.markdown-content a{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent)}.markdown-content a:hover{color:color-mix(in srgb,var(--primary) 80%,transparent)}.markdown-content a{text-decoration-line:underline;text-underline-offset:2px;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;text-decoration-color:hsl(var(--primary) / .3)}.markdown-content a:hover{text-decoration-color:hsl(var(--primary) / .6)}.markdown-content strong{font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.markdown-content em{font-style:italic;color:color-mix(in srgb,var(--foreground) 80%,transparent)}.markdown-content blockquote{border-left-width:4px;border-color:color-mix(in srgb,var(--primary) 60%,transparent);background-color:color-mix(in srgb,var(--primary) 5%,transparent);margin-top:2rem;margin-bottom:2rem;border-top-right-radius:.5rem;border-bottom-right-radius:.5rem;padding-top:1rem;padding-bottom:1rem;padding-left:1.5rem;font-style:italic;color:color-mix(in srgb,var(--foreground) 80%,transparent)}.markdown-content code{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);border-radius:.25rem;padding:.25rem .5rem;font-family:JetBrains Mono,SF Mono,Monaco,Cascadia Code,Roboto Mono,Source Code Pro,Fira Code,Consolas,Courier New,monospace;font-size:.875rem;line-height:1.25rem;border-width:1px;border-color:color-mix(in srgb,var(--border) 50%,transparent)}.markdown-content pre{border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent);border-radius:.75rem;padding:1.5rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);margin-top:2rem;margin-bottom:2rem;overflow-x:auto}.markdown-content pre code{border-style:none;background-color:transparent;padding:0;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.markdown-content ul,.markdown-content ol{margin-bottom:1.5rem}.markdown-content ul>:not([hidden])~:not([hidden]),.markdown-content ol>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.markdown-content ul,.markdown-content ol,.markdown-content li{color:color-mix(in srgb,var(--foreground) 90%,transparent)}.markdown-content li::marker{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent)}.markdown-content table{margin-top:2rem;margin-bottom:2rem;width:100%;border-collapse:collapse;overflow:hidden;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent)}.markdown-content th{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) NaN%,transparent);font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);border-bottom-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);padding:.75rem;text-align:left}.markdown-content td{border-bottom-width:1px;border-color:color-mix(in srgb,var(--border) 50%,transparent);padding:.75rem;color:color-mix(in srgb,var(--foreground) 90%,transparent)}.markdown-content img{border-radius:.75rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);margin-left:auto;margin-right:auto;margin-top:2rem;margin-bottom:2rem;border-width:1px;border-color:color-mix(in srgb,var(--border) 50%,transparent)}.markdown-content hr{margin-top:3rem;margin-bottom:3rem;border-color:color-mix(in srgb,var(--border) 50%,transparent)}@media (prefers-reduced-motion: reduce){.theme-transition{transition:none}}@media print{.theme-print{--background: white;--foreground: black;--card: white;--card-foreground: black}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Arial,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,SF Mono,Monaco,Cascadia Code,Roboto Mono,Source Code Pro,Fira Code,Consolas,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root,html[data-theme=light]{--background: oklch(.9818 .0054 95.0986);--foreground: oklch(.3438 .0269 95.7226);--card: oklch(.9818 .0054 95.0986);--card-foreground: oklch(.1908 .002 106.5859);--popover: oklch(1 0 0);--popover-foreground: oklch(.2671 .0196 98.939);--primary: oklch(.6171 .1375 39.0427);--primary-foreground: oklch(1 0 0);--secondary: oklch(.9245 .0138 92.9892);--secondary-foreground: oklch(.4334 .0177 98.6048);--muted: oklch(.9341 .0153 90.239);--muted-foreground: oklch(.6059 .0075 97.4233);--accent: oklch(.9245 .0138 92.9892);--accent-foreground: oklch(.2671 .0196 98.939);--destructive: oklch(.1908 .002 106.5859);--destructive-foreground: oklch(1 0 0);--border: oklch(.8847 .0069 97.3627);--input: oklch(.7621 .0156 98.3528);--ring: oklch(.6171 .1375 39.0427);--chart-1: oklch(.5583 .1276 42.9956);--chart-2: oklch(.6898 .1581 290.4107);--chart-3: oklch(.8816 .0276 93.128);--chart-4: oklch(.8822 .0403 298.1792);--chart-5: oklch(.5608 .1348 42.0584);--sidebar: oklch(.9663 .008 98.8792);--sidebar-foreground: oklch(.359 .0051 106.6524);--sidebar-primary: oklch(.6171 .1375 39.0427);--sidebar-primary-foreground: oklch(.9881 0 0);--sidebar-accent: oklch(.9245 .0138 92.9892);--sidebar-accent-foreground: oklch(.325 0 0);--sidebar-border: oklch(.9401 0 0);--sidebar-ring: oklch(.7731 0 0);--font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius: .5rem;--shadow-2xs: 0 1px 3px 0px hsl(0 0% 0% / .05);--shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / .05);--shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 1px 2px -1px hsl(0 0% 0% / .1);--shadow: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 1px 2px -1px hsl(0 0% 0% / .1);--shadow-md: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 2px 4px -1px hsl(0 0% 0% / .1);--shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 4px 6px -1px hsl(0 0% 0% / .1);--shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 8px 10px -1px hsl(0 0% 0% / .1);--shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / .25);--tracking-normal: 0em;--spacing: .25rem}html[data-theme=dark]{--background: oklch(.2679 .0036 106.6427);--foreground: oklch(.8074 .0142 93.0137);--card: oklch(.2679 .0036 106.6427);--card-foreground: oklch(.9818 .0054 95.0986);--popover: oklch(.3085 .0035 106.6039);--popover-foreground: oklch(.9211 .004 106.4781);--primary: oklch(.6724 .1308 38.7559);--primary-foreground: oklch(1 0 0);--secondary: oklch(.9818 .0054 95.0986);--secondary-foreground: oklch(.3085 .0035 106.6039);--muted: oklch(.2213 .0038 106.707);--muted-foreground: oklch(.7713 .0169 99.0657);--accent: oklch(.213 .0078 95.4245);--accent-foreground: oklch(.9663 .008 98.8792);--destructive: oklch(.6368 .2078 25.3313);--destructive-foreground: oklch(1 0 0);--border: oklch(.3618 .0101 106.8928);--input: oklch(.4336 .0113 100.2195);--ring: oklch(.6724 .1308 38.7559);--chart-1: oklch(.5583 .1276 42.9956);--chart-2: oklch(.6898 .1581 290.4107);--chart-3: oklch(.213 .0078 95.4245);--chart-4: oklch(.3074 .0516 289.323);--chart-5: oklch(.5608 .1348 42.0584);--sidebar: oklch(.2357 .0024 67.7077);--sidebar-foreground: oklch(.8074 .0142 93.0137);--sidebar-primary: oklch(.325 0 0);--sidebar-primary-foreground: oklch(.9881 0 0);--sidebar-accent: oklch(.168 .002 106.6177);--sidebar-accent-foreground: oklch(.8074 .0142 93.0137);--sidebar-border: oklch(.9401 0 0);--sidebar-ring: oklch(.7731 0 0);--font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius: .5rem;--shadow-2xs: 0 1px 3px 0px hsl(0 0% 0% / .05);--shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / .05);--shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 1px 2px -1px hsl(0 0% 0% / .1);--shadow: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 1px 2px -1px hsl(0 0% 0% / .1);--shadow-md: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 2px 4px -1px hsl(0 0% 0% / .1);--shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 4px 6px -1px hsl(0 0% 0% / .1);--shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 8px 10px -1px hsl(0 0% 0% / .1);--shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / .25)}*{box-sizing:border-box}.theme-transition,.theme-transition *,.theme-transition *:before,.theme-transition *:after{transition:color .3s ease,background-color .3s ease,border-color .3s ease,fill .3s ease,stroke .3s ease,opacity .3s ease,box-shadow .3s ease!important}html{scroll-behavior:smooth;transition:none}@font-face{font-display:swap}body{display:flex;min-height:100svh;flex-direction:column;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--background) NaN%,transparent);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Arial,sans-serif;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}body *::-moz-selection{background-color:color-mix(in srgb,var(--primary) NaN%,transparent);--tw-bg-opacity: .2;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);background-color:hsl(var(--primary))}body *::selection{background-color:color-mix(in srgb,var(--primary) NaN%,transparent);--tw-bg-opacity: .2;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);background-color:hsl(var(--primary))}body::-moz-selection{background-color:color-mix(in srgb,var(--primary) NaN%,transparent);--tw-bg-opacity: .2;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);background-color:hsl(var(--primary))}body::selection{background-color:color-mix(in srgb,var(--primary) NaN%,transparent);--tw-bg-opacity: .2;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);background-color:hsl(var(--primary))}body{font-size:16px;line-height:1.75;font-weight:400;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1,"liga" 1,"calt" 1,"ss01" 1;background-image:radial-gradient(circle at 20% 80%,hsl(var(--primary) / .06) 0%,transparent 50%),radial-gradient(circle at 80% 20%,hsl(var(--secondary) / .06) 0%,transparent 50%),radial-gradient(circle at 50% 50%,hsl(var(--primary) / .02) 0%,transparent 70%);background-attachment:fixed;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 30% 30%,hsl(var(--primary) / .1) 0%,transparent 30%);opacity:0;animation:pulse-background 8s ease-in-out infinite;pointer-events:none;z-index:-1}@keyframes pulse-background{0%,to{opacity:0;transform:scale(1)}50%{opacity:.3;transform:scale(1.1)}}@media (min-width: 640px){body{font-size:17px}}section,footer{margin-left:auto;margin-right:auto;width:100%;padding-left:0;padding-right:0;max-width:100%}main{flex:1 1 0%}a{outline-width:2px;outline-offset:2px;outline-color:var(--primary);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}a:focus-visible{text-decoration-line:none;outline-style:dashed}a:hover{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}svg{display:inline-block;height:1.5rem;width:1.5rem;fill:var(--foreground)}.group:hover svg{fill:var(--primary)}svg.icon-tabler{display:inline-block;height:1.5rem;width:1.5rem;--tw-scale-x: 1.25;--tw-scale-y: 1.25;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));fill:transparent;stroke:currentColor;stroke-width:2;opacity:.9}.group:hover svg.icon-tabler{fill:transparent}@media (min-width: 640px){svg.icon-tabler{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}}.prose :is(:where(h1,h2,h3,h4,h5,h6,th):not(:where([class~=not-prose],[class~=not-prose] *))){font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif!important;line-height:1.375!important;--tw-text-opacity: 1 !important;color:color-mix(in srgb,var(--foreground) NaN%,transparent)!important}.prose :is(:where(h1):not(:where([class~=not-prose],[class~=not-prose] *))){margin-bottom:2rem!important;margin-top:.5rem!important;font-size:2.25rem!important;line-height:2.5rem!important;font-weight:700!important;letter-spacing:-.025em!important}.prose :is(:where(h2):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:3.5rem!important;margin-bottom:1.5rem!important;font-size:1.875rem!important;line-height:2.25rem!important;font-weight:600!important;letter-spacing:-.025em!important}.prose :is(:where(h3):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:2.5rem!important;margin-bottom:1.25rem!important;font-size:1.5rem!important;line-height:2rem!important;font-weight:500!important;letter-spacing:-.025em!important}.prose :is(:where(h4):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:2rem!important;margin-bottom:1rem!important;font-size:1.25rem!important;line-height:1.75rem!important;font-weight:500!important;letter-spacing:-.025em!important}.prose :is(:where(p):not(:where([class~=not-prose],[class~=not-prose] *))){margin-bottom:1.75rem!important;font-family:Charter,Iowan Old Style,Georgia,Source Serif Pro,Palatino,Book Antiqua,serif!important;font-size:1.0625rem!important;line-height:1.625!important;letter-spacing:.025em!important;--tw-text-opacity: 1 !important;color:color-mix(in srgb,var(--foreground) NaN%,transparent)!important}.prose :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-text-opacity: 1 !important;color:color-mix(in srgb,var(--primary) NaN%,transparent)!important;text-decoration-style:solid!important;text-decoration-thickness:2px!important;text-underline-offset:4px!important;transition-property:all!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important;transition-duration:.2s!important;color:hsl(var(--primary))!important}.prose:hover :is(:where(a):not(:where([class~=not-prose],[class~=not-prose] *))){--tw-brightness: brightness(1.1) !important;filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.prose :is(:where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:1.5rem!important;margin-bottom:1.5rem!important;border-top-right-radius:.5rem!important;border-bottom-right-radius:.5rem!important;border-left-width:4px!important;border-color:color-mix(in srgb,var(--primary) NaN%,transparent)!important;border-left-color:color-mix(in srgb,var(--primary) NaN%,transparent)!important;--tw-border-opacity: .6 !important;background-color:color-mix(in srgb,var(--card) NaN%,transparent)!important;--tw-bg-opacity: .5 !important;padding-top:1rem!important;padding-bottom:1rem!important;padding-left:1.5rem!important;font-family:Charter,Iowan Old Style,Georgia,Source Serif Pro,Palatino,Book Antiqua,serif!important;font-size:1.125rem!important;font-style:italic!important;border-color:hsl(var(--primary))!important}.prose :is(:where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:.5rem!important;text-align:center!important;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Arial,sans-serif!important;font-size:.875rem!important;line-height:1.25rem!important;--tw-text-opacity: 1 !important;color:color-mix(in srgb,var(--foreground) NaN%,transparent)!important;opacity:.75!important}.prose :is(:where(strong):not(:where([class~=not-prose],[class~=not-prose] *))){font-weight:600!important;--tw-text-opacity: 1 !important;color:color-mix(in srgb,var(--foreground) NaN%,transparent)!important}.prose :is(:where(em):not(:where([class~=not-prose],[class~=not-prose] *))){font-family:Charter,Iowan Old Style,Georgia,Source Serif Pro,Palatino,Book Antiqua,serif!important;font-style:italic!important}.prose :is(:where(code):not(:where([class~=not-prose],[class~=not-prose] *))){border-radius:.375rem!important;background-color:color-mix(in srgb,var(--card) NaN%,transparent)!important;--tw-bg-opacity: .8 !important;padding:.25rem .5rem!important;font-family:JetBrains Mono,SF Mono,Monaco,Cascadia Code,Roboto Mono,Source Code Pro,Fira Code,Consolas,Courier New,monospace!important;font-size:.875rem!important;line-height:1.25rem!important;font-weight:500!important;--tw-text-opacity: 1 !important;color:color-mix(in srgb,var(--foreground) NaN%,transparent)!important}.prose :is(:where(code):not(:where([class~=not-prose],[class~=not-prose] *))):before{--tw-content: none !important;content:var(--tw-content)!important}.prose :is(:where(code):not(:where([class~=not-prose],[class~=not-prose] *))):after{--tw-content: none !important;content:var(--tw-content)!important}.prose :is(:where(ol):not(:where([class~=not-prose],[class~=not-prose] *))){font-family:Charter,Iowan Old Style,Georgia,Source Serif Pro,Palatino,Book Antiqua,serif!important;font-size:1.125rem!important;line-height:1.75rem!important;line-height:1.625!important;--tw-text-opacity: 1 !important;color:color-mix(in srgb,var(--foreground) NaN%,transparent)!important}.prose :is(:where(ul):not(:where([class~=not-prose],[class~=not-prose] *))){overflow-x:clip;font-family:Charter,Iowan Old Style,Georgia,Source Serif Pro,Palatino,Book Antiqua,serif!important;font-size:1.125rem!important;line-height:1.75rem!important;line-height:1.625!important;--tw-text-opacity: 1 !important;color:color-mix(in srgb,var(--foreground) NaN%,transparent)!important}.prose :is(:where(li):not(:where([class~=not-prose],[class~=not-prose] *))){margin-bottom:.75rem!important;font-family:Charter,Iowan Old Style,Georgia,Source Serif Pro,Palatino,Book Antiqua,serif!important;font-size:1.0625rem!important;line-height:1.625!important}.prose * :is(:where(li):not(:where([class~=not-prose],[class~=not-prose] *)))::marker{color:color-mix(in srgb,var(--primary) NaN%,transparent)!important;color:hsl(var(--primary))!important}.prose :is(:where(li):not(:where([class~=not-prose],[class~=not-prose] *)))::marker{color:color-mix(in srgb,var(--primary) NaN%,transparent)!important;color:hsl(var(--primary))!important}.prose :is(:where(table):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:2rem!important;margin-bottom:2rem!important;width:100%!important;border-collapse:collapse!important;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Arial,sans-serif!important;--tw-text-opacity: 1 !important;color:color-mix(in srgb,var(--foreground) NaN%,transparent)!important}.prose :is(:where(th):not(:where([class~=not-prose],[class~=not-prose] *))){border-width:1px!important;--tw-border-opacity: 1 !important;border-color:color-mix(in srgb,var(--border) NaN%,transparent)!important;--tw-bg-opacity: 1 !important;background-color:color-mix(in srgb,var(--muted) NaN%,transparent)!important;padding:.75rem 1rem!important;text-align:left!important;font-weight:600!important;border-color:hsl(var(--border))!important}.prose :is(:where(td):not(:where([class~=not-prose],[class~=not-prose] *))){border-width:1px!important;--tw-border-opacity: 1 !important;border-color:color-mix(in srgb,var(--border) NaN%,transparent)!important;padding:.75rem 1rem!important;border-color:hsl(var(--border))!important}.prose :is(:where(img):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:2rem!important;margin-bottom:2rem!important;margin-left:auto!important;margin-right:auto!important;border-radius:.75rem!important;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1) !important;--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color) !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)!important}.prose :is(:where(hr):not(:where([class~=not-prose],[class~=not-prose] *))){margin-top:3rem!important;margin-bottom:3rem!important;border-width:2px!important;border-color:color-mix(in srgb,var(--border) NaN%,transparent)!important;--tw-border-opacity: .3 !important;border-color:hsl(var(--border))!important}.prose{font-size:1.0625rem;line-height:1.85;max-width:none;font-feature-settings:"kern" 1,"liga" 1,"calt" 1,"onum" 1,"ss01" 1;text-rendering:optimizeLegibility;-webkit-hyphens:none;hyphens:none;word-spacing:.05em}.prose h1{letter-spacing:-.03em}.prose h2{letter-spacing:-.02em}.prose h3{letter-spacing:-.01em}.prose a{overflow-wrap:break-word}.prose a:hover{--tw-text-opacity: 1 !important;color:color-mix(in srgb,var(--primary) NaN%,transparent)!important;color:hsl(var(--primary))!important}.prose thead th:first-child,tbody td:first-child,tfoot td:first-child{padding-left:.5714286em}.prose h2#table-of-contents{margin-bottom:.5rem}.prose details{display:inline-block;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.prose summary{outline-width:2px;outline-offset:2px;outline-color:var(--primary);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.prose summary:focus-visible{text-decoration-line:none;outline-style:dashed}.prose h2#table-of-contents+p{display:none}html{overflow-y:scroll}::-webkit-scrollbar{width:.75rem}::-webkit-scrollbar-track{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--background) NaN%,transparent)}::-webkit-scrollbar-thumb{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent)}::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) NaN%,transparent)}code,blockquote{word-wrap:break-word}pre>code{white-space:pre}.prose pre{margin-top:2rem!important;margin-bottom:2rem!important;overflow-x:auto!important;border-radius:.75rem!important;background-color:color-mix(in srgb,var(--card) NaN%,transparent)!important;--tw-bg-opacity: .9 !important;padding:1.5rem!important;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;position:relative}.prose pre:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,hsl(var(--primary) / .5),hsl(var(--secondary) / .5))}.prose pre code{background-color:transparent!important;padding:0!important;font-size:1rem!important;line-height:1.5rem!important;line-height:1.625!important;font-family:JetBrains Mono,Fira Code,SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-weight:400}.prose .mermaid-rendered{margin-top:2rem;margin-bottom:2rem;display:flex;justify-content:center;overflow-x:auto;overflow-y:hidden;max-width:100%}.prose .mermaid-rendered svg{height:auto;max-width:none!important;width:auto!important;min-width:-moz-min-content;min-width:min-content}.prose .mermaid-rendered[id*=mermaid]{width:100%}@media (max-width: 768px){.prose .mermaid-rendered{overflow-x:auto;-webkit-overflow-scrolling:touch}.prose .mermaid-rendered svg{min-width:600px}}.prose pre:has(>code.language-mermaid),.prose pre[data-language=mermaid]{position:relative;display:none}.prose .mermaid-loading{margin-top:2rem;margin-bottom:2rem;display:flex;align-items:center;justify-content:center;border-radius:.375rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));padding:2rem}@media (prefers-color-scheme: dark){.prose .mermaid-loading{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}}.prose .mermaid-loading{min-height:200px}.prose .mermaid-loading:after{content:"Loading diagram...";--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}@media (prefers-color-scheme: dark){.prose .mermaid-loading:after{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}}.prose .plantuml,.prose .graphviz,.prose .ditaa{margin-top:2rem;margin-bottom:2rem;display:flex;justify-content:center}.prose .plantuml svg,.prose .graphviz svg,.prose .ditaa svg{height:auto;max-width:100%}.prose a:focus,.prose button:focus{border-radius:.375rem!important;outline-width:2px!important;outline-offset:2px!important;outline-color:var(--primary)!important;box-shadow:0 0 0 4px hsl(var(--primary) / .1)}.prose li{margin-top:.5rem!important;margin-bottom:.5rem!important}.prose li>p{margin-top:.25rem!important;margin-bottom:.25rem!important}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%),0 3px rgb(var(--tw-prose-kbd-shadows) / 10%);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: 17 24 39;--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: 255 255 255;--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-gray{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: 17 24 39;--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: 255 255 255;--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151}.search-icon{color:hsl(var(--muted-foreground));transition:color .3s cubic-bezier(.4,0,.2,1)}.search-clear-btn{color:hsl(var(--muted-foreground));transition:color .3s cubic-bezier(.4,0,.2,1);border-radius:var(--radius)}.search-clear-btn:hover{color:hsl(var(--foreground));background-color:hsl(var(--accent))}.search-results{background-color:hsl(var(--popover));color:hsl(var(--popover-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:var(--shadow-lg);backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%)}.search-result-item{transition:background-color .2s cubic-bezier(.4,0,.2,1);border-radius:var(--radius);margin:.25rem}.search-result-item:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.search-result-item:focus{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground));outline:2px solid hsl(var(--ring));outline-offset:2px}.search-result-title{color:hsl(var(--foreground));font-weight:500}.search-result-description{color:hsl(var(--muted-foreground));font-size:.875rem}.search-no-results{color:hsl(var(--muted-foreground));text-align:center;padding:1rem}.search-input-enhanced{height:3.5rem;width:100%;border-radius:.75rem;padding-left:3rem;padding-right:5rem;font-size:1rem;line-height:1.5rem;background-color:hsl(var(--card));border:1px solid hsl(var(--border) / .4);color:hsl(var(--foreground));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.search-input-enhanced::-moz-placeholder{color:hsl(var(--muted-foreground) / .6);font-style:italic}.search-input-enhanced::placeholder{color:hsl(var(--muted-foreground) / .6);font-style:italic}.search-input-enhanced:focus{border-color:hsl(var(--primary) / .5);background-color:hsl(var(--card) / .8);box-shadow:var(--shadow-lg);outline:none;ring:2px;ring-color:hsl(var(--primary))}.search-suggestions{background-color:hsl(var(--popover));color:hsl(var(--popover-foreground));border:1px solid hsl(var(--border) / .4);border-radius:var(--radius);box-shadow:var(--shadow-lg);backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%)}.search-kbd{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);font-size:.75rem;font-weight:600;padding:.25rem .5rem}:root .search-input-enhanced,html[data-theme=light] .search-input-enhanced{box-shadow:var(--shadow-sm)}:root .search-suggestions,html[data-theme=light] .search-suggestions{box-shadow:var(--shadow-lg)}html[data-theme=dark] .search-input-enhanced{box-shadow:var(--shadow-sm)}html[data-theme=dark] .search-suggestions{box-shadow:var(--shadow-lg)}.focus-outline{outline-width:2px;outline-offset:2px;outline-color:var(--primary);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.focus-outline:focus-visible{text-decoration-line:none;outline-style:dashed}.btn-primary{border-radius:.5rem;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent);padding:.75rem 1.5rem;font-weight:500;--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) NaN%,transparent);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;background-color:hsl(var(--primary))}.btn-primary:hover{--tw-brightness: brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.btn-primary:focus{outline:2px solid transparent;outline-width:2px;outline-offset:2px;outline-color:var(--primary)}.card{border-radius:.75rem;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent);padding:1.5rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;border-color:hsl(var(--border))}.card:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.card{--tw-bg-opacity: .8;--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);background:hsl(var(--card) / .8);backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%);border:1px solid hsl(var(--border) / .3);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,hsl(var(--primary) / .5),hsl(var(--secondary) / .5),transparent);opacity:0;transition:opacity .3s ease}.card:hover:before{opacity:1}.badge{display:inline-flex;align-items:center;border-radius:9999px;background-color:color-mix(in srgb,var(--primary) 10%,transparent);padding:.25rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent);color:hsl(var(--primary));background-color:hsl(var(--primary) / .1)}.\!container,.container{margin-left:auto;margin-right:auto;width:100%;padding-left:0;padding-right:0}.\!container{max-width:100%!important}.container{max-width:100%}.gradient-text{background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--secondary)));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.skeleton-shimmer{background:linear-gradient(90deg,hsl(var(--muted)),hsl(var(--muted) / .5),hsl(var(--muted)));background-size:200% 100%;animation:shimmer 1.5s infinite linear}.stagger-fade-in>*{opacity:0;animation:fadeIn .6s ease-out forwards}.stagger-fade-in>*:nth-child(1){animation-delay:.1s}.stagger-fade-in>*:nth-child(2){animation-delay:.2s}.stagger-fade-in>*:nth-child(3){animation-delay:.3s}.stagger-fade-in>*:nth-child(4){animation-delay:.4s}.stagger-fade-in>*:nth-child(5){animation-delay:.5s}.stagger-fade-in>*:nth-child(6){animation-delay:.6s}.stagger-fade-in>*:nth-child(7){animation-delay:.7s}.stagger-fade-in>*:nth-child(8){animation-delay:.8s}.loading{cursor:wait}.loading *{pointer-events:none}.loading .skeleton-shimmer{animation-duration:1s}html[data-theme=dark] .skeleton-shimmer{background:linear-gradient(90deg,hsl(var(--muted)),hsl(var(--muted) / .8),hsl(var(--muted)))}.tag-cloud--cybersecurity{background:linear-gradient(135deg,hsl(var(--destructive) / .05),hsl(var(--chart-1) / .03),hsl(var(--destructive) / .02))}.tag-cloud--professional{background:linear-gradient(135deg,hsl(var(--primary) / .05),hsl(var(--accent) / .03),hsl(var(--primary) / .02))}.tag-cloud--rainbow .rainbow-tag-0{--tag-color: hsl(var(--destructive))}.tag-cloud--rainbow .rainbow-tag-1{--tag-color: hsl(var(--chart-1))}.tag-cloud--rainbow .rainbow-tag-2{--tag-color: hsl(var(--chart-2))}.tag-cloud--rainbow .rainbow-tag-3{--tag-color: hsl(var(--chart-3))}.tag-cloud--rainbow .rainbow-tag-4{--tag-color: hsl(var(--primary))}.tag-cloud--rainbow .rainbow-tag-5{--tag-color: hsl(var(--chart-4))}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes float-particle{0%,to{transform:translateY(0);opacity:.3}50%{transform:translateY(-20px);opacity:.8}}@keyframes tag-glow{0%,to{box-shadow:0 0 5px hsl(var(--primary) / .3)}50%{box-shadow:0 0 15px hsl(var(--primary) / .6)}}.animate-fade-in-up{animation:fade-in-up .6s ease-out forwards;opacity:0}.animate-float-particle{animation:float-particle 4s ease-in-out infinite}.enhanced-tag{position:relative;display:inline-flex;align-items:center;gap:.375rem;font-weight:500;transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.enhanced-tag:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.enhanced-tag:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.enhanced-tag:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: color-mix(in srgb, var(--ring) NaN%, transparent);--tw-ring-offset-width: 2px}.popular-tags>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}@media (max-width: 640px){.tag-cloud__container{gap:.25rem;padding:.5rem}.tag-filter>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.tag-filter{padding:.75rem}.popular-tags__item{padding:.5rem}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.-bottom-1{bottom:-.25rem}.-right-1{right:-.25rem}.-top-1{top:-.25rem}.-top-8{top:-2rem}.bottom-0{bottom:0}.bottom-1\/4{bottom:25%}.bottom-16{bottom:4rem}.bottom-4{bottom:1rem}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1\/2{left:50%}.left-1\/4{left:25%}.left-2{left:.5rem}.right-0{right:0}.right-1\/4{right:25%}.right-3{right:.75rem}.right-4{right:1rem}.right-6{right:1.5rem}.top-0{top:0}.top-1\/4{top:25%}.top-24{top:6rem}.top-3{top:.75rem}.top-\[1px\]{top:1px}.top-\[60\%\]{top:60%}.top-full{top:100%}.isolate{isolation:isolate}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\[1\]{z-index:1}.row-span-3{grid-row:span 3 / span 3}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-12{margin-top:3rem;margin-bottom:3rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.my-8{margin-top:2rem;margin-bottom:2rem}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-28{margin-bottom:7rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-10{margin-left:2.5rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.\!table{display:table!important}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:16 / 9}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-1\/3{height:33.333333%}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[18px\]{height:18px}.h-\[1px\]{height:1px}.h-\[32rem\]{height:32rem}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-full{height:100%}.h-px{height:1px}.max-h-60{max-height:15rem}.max-h-80{max-height:20rem}.min-h-\[200px\]{min-height:200px}.min-h-\[20px\]{min-height:20px}.min-h-\[24px\]{min-height:24px}.min-h-\[28px\]{min-height:28px}.min-h-\[300px\]{min-height:300px}.min-h-\[32px\]{min-height:32px}.min-h-\[36px\]{min-height:36px}.min-h-\[400px\]{min-height:400px}.min-h-\[500px\]{min-height:500px}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-1{width:.25rem}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-2\/3{width:66.666667%}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-3\/5{width:60%}.w-32{width:8rem}.w-4{width:1rem}.w-4\/5{width:80%}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-5\/6{width:83.333333%}.w-6{width:1.5rem}.w-64{width:16rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-96{width:24rem}.w-\[1px\]{width:1px}.w-\[350px\]{width:350px}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.min-w-0{min-width:0px}.min-w-\[1\.375rem\]{min-width:1.375rem}.min-w-\[18px\]{min-width:18px}.min-w-\[8rem\]{min-width:8rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[80\%\]{max-width:80%}.max-w-max{max-width:-moz-max-content;max-width:max-content}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\/2{--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-100\%\]{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-2{--tw-translate-y: .5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-45{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-75{--tw-scale-x: .75;--tw-scale-y: .75;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-90{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-\[shimmer_1\.5s_infinite\]{animation:shimmer 1.5s infinite}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1.5rem * var(--tw-space-x-reverse));margin-left:calc(1.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(3rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(3rem * var(--tw-space-y-reverse))}.space-y-16>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(4rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.text-nowrap{text-wrap:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[10px\]{border-radius:10px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.rounded-tl-sm{border-top-left-radius:.125rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-8{border-width:8px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-2{border-left-width:2px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-accent\/30{border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.border-background{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--background) NaN%,transparent)}.border-border{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent)}.border-border\/30{border-color:color-mix(in srgb,var(--border) 30%,transparent)}.border-border\/40{border-color:color-mix(in srgb,var(--border) 40%,transparent)}.border-border\/50{border-color:color-mix(in srgb,var(--border) 50%,transparent)}.border-destructive\/30{border-color:color-mix(in srgb,var(--destructive) 30%,transparent)}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-green-300{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity, 1))}.border-green-500\/30{border-color:#22c55e4d}.border-input{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--input) NaN%,transparent)}.border-muted{--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--muted) NaN%,transparent)}.border-muted-foreground\/30{border-color:color-mix(in srgb,var(--muted-foreground) 30%,transparent)}.border-muted\/30{border-color:color-mix(in srgb,var(--muted) 30%,transparent)}.border-orange-500\/20{border-color:#f9731633}.border-orange-500\/30{border-color:#f973164d}.border-primary\/20{border-color:color-mix(in srgb,var(--primary) 20%,transparent)}.border-primary\/30{border-color:color-mix(in srgb,var(--primary) 30%,transparent)}.border-primary\/40{border-color:color-mix(in srgb,var(--primary) 40%,transparent)}.border-purple-200{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1))}.border-purple-500{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.border-red-500\/30{border-color:#ef44444d}.border-secondary\/30{border-color:color-mix(in srgb,var(--secondary) 30%,transparent)}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-white\/10{border-color:#ffffff1a}.border-white\/20{border-color:#fff3}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.border-yellow-300{--tw-border-opacity: 1;border-color:rgb(253 224 71 / var(--tw-border-opacity, 1))}.border-t-primary{--tw-border-opacity: 1;border-top-color:color-mix(in srgb,var(--primary) NaN%,transparent)}.bg-accent\/10{background-color:color-mix(in srgb,var(--accent) 10%,transparent)}.bg-background{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--background) NaN%,transparent)}.bg-background\/50{background-color:color-mix(in srgb,var(--background) 50%,transparent)}.bg-background\/80{background-color:color-mix(in srgb,var(--background) 80%,transparent)}.bg-background\/95{background-color:color-mix(in srgb,var(--background) 95%,transparent)}.bg-border{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--border) NaN%,transparent)}.bg-card{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent)}.bg-card\/50{background-color:color-mix(in srgb,var(--card) 50%,transparent)}.bg-card\/90{background-color:color-mix(in srgb,var(--card) 90%,transparent)}.bg-destructive{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--destructive) NaN%,transparent)}.bg-destructive\/10{background-color:color-mix(in srgb,var(--destructive) 10%,transparent)}.bg-foreground\/40{background-color:color-mix(in srgb,var(--foreground) 40%,transparent)}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500\/20{background-color:#22c55e33}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-muted{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) NaN%,transparent)}.bg-muted\/10{background-color:color-mix(in srgb,var(--muted) 10%,transparent)}.bg-muted\/30{background-color:color-mix(in srgb,var(--muted) 30%,transparent)}.bg-muted\/50{background-color:color-mix(in srgb,var(--muted) 50%,transparent)}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.bg-popover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--popover) NaN%,transparent)}.bg-primary{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent)}.bg-primary-foreground\/20{background-color:color-mix(in srgb,var(--primary-foreground) 20%,transparent)}.bg-primary\/10{background-color:color-mix(in srgb,var(--primary) 10%,transparent)}.bg-primary\/15{background-color:color-mix(in srgb,var(--primary) 15%,transparent)}.bg-primary\/20{background-color:color-mix(in srgb,var(--primary) 20%,transparent)}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/20{background-color:#ef444433}.bg-red-500\/30{background-color:#ef44444d}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-secondary{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--secondary) NaN%,transparent)}.bg-secondary\/10{background-color:color-mix(in srgb,var(--secondary) 10%,transparent)}.bg-slate-900{--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/10{background-color:#ffffff1a}.bg-white\/5{background-color:#ffffff0d}.bg-white\/50{background-color:#ffffff80}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-200{--tw-bg-opacity: 1;background-color:rgb(254 240 138 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-yellow-600{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.bg-\[linear-gradient\(rgba\(var\(--primary\)\,0\.1\)_1px\,transparent_1px\)\,linear-gradient\(90deg\,rgba\(var\(--primary\)\,0\.1\)_1px\,transparent_1px\)\]{background-image:linear-gradient(rgba(var(--primary),.1) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--primary),.1) 1px,transparent 1px)}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-tl{background-image:linear-gradient(to top left,var(--tw-gradient-stops))}.from-orange-500{--tw-gradient-from: #f97316 var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-500\/10{--tw-gradient-from: rgb(249 115 22 / .1) var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-500\/5{--tw-gradient-from: rgb(249 115 22 / .05) var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-500{--tw-gradient-from: #ec4899 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 72 153 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-600{--tw-gradient-from: #9333ea var(--tw-gradient-from-position);--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500\/10{--tw-gradient-from: rgb(239 68 68 / .1) var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-slate-900{--tw-gradient-from: #0f172a var(--tw-gradient-from-position);--tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-purple-900{--tw-gradient-to: rgb(88 28 135 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #581c87 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-transparent{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white\/10{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .1) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white\/5{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .05) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white\/\[0\.02\]{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .02) var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-orange-500\/10{--tw-gradient-to: rgb(249 115 22 / .1) var(--tw-gradient-to-position)}.to-pink-600{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.to-red-500{--tw-gradient-to: #ef4444 var(--tw-gradient-to-position)}.to-red-500\/10{--tw-gradient-to: rgb(239 68 68 / .1) var(--tw-gradient-to-position)}.to-red-500\/5{--tw-gradient-to: rgb(239 68 68 / .05) var(--tw-gradient-to-position)}.to-slate-900{--tw-gradient-to: #0f172a var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-violet-500{--tw-gradient-to: #8b5cf6 var(--tw-gradient-to-position)}.bg-\[length\:200\%_100\%\]{background-size:200% 100%}.bg-\[size\:20px_20px\]{background-size:20px 20px}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.fill-current{fill:currentColor}.fill-foreground{fill:var(--foreground)}.stroke-current{stroke:currentColor}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[2px\]{padding:2px}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-9xl{font-size:8rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-4{line-height:1rem}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-accent{--tw-text-opacity: 1;color:color-mix(in srgb,var(--accent) NaN%,transparent)}.text-accent-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--accent-foreground) NaN%,transparent)}.text-card-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--card-foreground) NaN%,transparent)}.text-current{color:currentColor}.text-destructive{--tw-text-opacity: 1;color:color-mix(in srgb,var(--destructive) NaN%,transparent)}.text-destructive-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--destructive-foreground) NaN%,transparent)}.text-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.text-foreground\/80{color:color-mix(in srgb,var(--foreground) 80%,transparent)}.text-foreground\/90{color:color-mix(in srgb,var(--foreground) 90%,transparent)}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-muted-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) NaN%,transparent)}.text-muted-foreground\/50{color:color-mix(in srgb,var(--muted-foreground) 50%,transparent)}.text-muted-foreground\/70{color:color-mix(in srgb,var(--muted-foreground) 70%,transparent)}.text-muted-foreground\/80{color:color-mix(in srgb,var(--muted-foreground) 80%,transparent)}.text-muted-foreground\/90{color:color-mix(in srgb,var(--muted-foreground) 90%,transparent)}.text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.text-orange-600{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.text-popover-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--popover-foreground) NaN%,transparent)}.text-primary{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent)}.text-primary-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) NaN%,transparent)}.text-primary-foreground\/80{color:color-mix(in srgb,var(--primary-foreground) 80%,transparent)}.text-primary\/80{color:color-mix(in srgb,var(--primary) 80%,transparent)}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.text-purple-800{--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}.text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-secondary-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--secondary-foreground) NaN%,transparent)}.text-skin-base{--tw-text-opacity: 1;color:rgba(var(--color-text-base),var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.no-underline{text-decoration-line:none}.decoration-dashed{text-decoration-style:dashed}.underline-offset-4{text-underline-offset:4px}.underline-offset-8{text-underline-offset:8px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-2xl{--tw-blur: blur(40px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-3xl{--tw-blur: blur(64px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-lg{--tw-blur: blur(16px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-lg{--tw-backdrop-blur: blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.delay-1000{transition-delay:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.from-primary{--tw-gradient-from: hsl(var(--primary)) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-primary{--tw-gradient-to: hsl(var(--primary)) var(--tw-gradient-to-position)}.bg-primary{background-color:hsl(var(--primary))}.text-primary{color:hsl(var(--primary))}.text-primary\/80{color:hsl(var(--primary) / .8)}.border-primary\/20{border-color:hsl(var(--primary) / .2)}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-primary\/20{background-color:hsl(var(--primary) / .2)}.bg-foreground\/40{background-color:hsl(var(--foreground) / .4)}.border-border{border-color:hsl(var(--border))}.border-primary\/30{border-color:hsl(var(--primary) / .3)}.\[all\:vars\]{all:vars}.\[db_servers\:vars\]{db_servers:vars}.\[idx\:idx\+1\]{idx:idx+1}.\[localhost\:9000\]{localhost:9000}.\[localhost\:9001\]{localhost:9001}.\[mask-image\:radial-gradient\(ellipse_80\%_50\%_at_50\%_0\%\,\#000_70\%\,transparent_110\%\)\]{-webkit-mask-image:radial-gradient(ellipse 80% 50% at 50% 0%,#000 70%,transparent 110%);mask-image:radial-gradient(ellipse 80% 50% at 50% 0%,#000 70%,transparent 110%)}.\[start\:end\]{start:end}.\[web_servers\:vars\]{web_servers:vars}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-slow{0%,to{opacity:1}50%{opacity:.6}}@keyframes wave{0%{transform:translate(-100%)}50%{transform:translate(100%)}to{transform:translate(100%)}}@media (prefers-color-scheme: dark){.dark\:prose-invert{--tw-prose-body: var(--tw-prose-invert-body);--tw-prose-headings: var(--tw-prose-invert-headings);--tw-prose-lead: var(--tw-prose-invert-lead);--tw-prose-links: var(--tw-prose-invert-links);--tw-prose-bold: var(--tw-prose-invert-bold);--tw-prose-counters: var(--tw-prose-invert-counters);--tw-prose-bullets: var(--tw-prose-invert-bullets);--tw-prose-hr: var(--tw-prose-invert-hr);--tw-prose-quotes: var(--tw-prose-invert-quotes);--tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);--tw-prose-captions: var(--tw-prose-invert-captions);--tw-prose-kbd: var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows);--tw-prose-code: var(--tw-prose-invert-code);--tw-prose-pre-code: var(--tw-prose-invert-pre-code);--tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);--tw-prose-th-borders: var(--tw-prose-invert-th-borders);--tw-prose-td-borders: var(--tw-prose-invert-td-borders)}}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.placeholder\:text-muted-foreground::-moz-placeholder{--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) NaN%,transparent)}.placeholder\:text-muted-foreground::placeholder{--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) NaN%,transparent)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-0:before{content:var(--tw-content);inset:0}.before\:translate-x-\[-200\%\]:before{content:var(--tw-content);--tw-translate-x: -200%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.before\:bg-gradient-to-br:before{content:var(--tw-content);background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.before\:bg-gradient-to-r:before{content:var(--tw-content);background-image:linear-gradient(to right,var(--tw-gradient-stops))}.before\:from-white\/0:before{content:var(--tw-content);--tw-gradient-from: rgb(255 255 255 / 0) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.before\:via-transparent:before{content:var(--tw-content);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to)}.before\:via-white\/20:before{content:var(--tw-content);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .2) var(--tw-gradient-via-position), var(--tw-gradient-to)}.before\:to-white\/0:before{content:var(--tw-content);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position)}.before\:opacity-0:before{content:var(--tw-content);opacity:0}.before\:opacity-30:before{content:var(--tw-content);opacity:.3}.before\:transition-opacity:before{content:var(--tw-content);transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.before\:transition-transform:before{content:var(--tw-content);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.before\:duration-500:before{content:var(--tw-content);transition-duration:.5s}.before\:duration-700:before{content:var(--tw-content);transition-duration:.7s}.hover\:z-10:hover{z-index:10}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:-translate-y-1:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:-translate-y-2:hover{--tw-translate-y: -.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:translate-x-\[100\%\]:hover{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:rotate-6:hover{--tw-rotate: 6deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.02\]:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-accent\/50:hover{border-color:color-mix(in srgb,var(--accent) 50%,transparent)}.hover\:border-primary\/20:hover{border-color:color-mix(in srgb,var(--primary) 20%,transparent)}.hover\:border-primary\/30:hover{border-color:color-mix(in srgb,var(--primary) 30%,transparent)}.hover\:border-primary\/50:hover{border-color:color-mix(in srgb,var(--primary) 50%,transparent)}.hover\:border-red-500\/50:hover{border-color:#ef444480}.hover\:border-white\/30:hover{border-color:#ffffff4d}.hover\:bg-accent:hover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--accent) NaN%,transparent)}.hover\:bg-accent\/50:hover{background-color:color-mix(in srgb,var(--accent) 50%,transparent)}.hover\:bg-card\/70:hover{background-color:color-mix(in srgb,var(--card) 70%,transparent)}.hover\:bg-card\/80:hover{background-color:color-mix(in srgb,var(--card) 80%,transparent)}.hover\:bg-destructive\/80:hover{background-color:color-mix(in srgb,var(--destructive) 80%,transparent)}.hover\:bg-destructive\/90:hover{background-color:color-mix(in srgb,var(--destructive) 90%,transparent)}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-muted:hover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) NaN%,transparent)}.hover\:bg-muted\/50:hover{background-color:color-mix(in srgb,var(--muted) 50%,transparent)}.hover\:bg-muted\/80:hover{background-color:color-mix(in srgb,var(--muted) 80%,transparent)}.hover\:bg-primary:hover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent)}.hover\:bg-primary\/10:hover{background-color:color-mix(in srgb,var(--primary) 10%,transparent)}.hover\:bg-primary\/15:hover{background-color:color-mix(in srgb,var(--primary) 15%,transparent)}.hover\:bg-primary\/20:hover{background-color:color-mix(in srgb,var(--primary) 20%,transparent)}.hover\:bg-primary\/80:hover{background-color:color-mix(in srgb,var(--primary) 80%,transparent)}.hover\:bg-primary\/90:hover{background-color:color-mix(in srgb,var(--primary) 90%,transparent)}.hover\:bg-purple-700:hover{--tw-bg-opacity: 1;background-color:rgb(126 34 206 / var(--tw-bg-opacity, 1))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-secondary\/80:hover{background-color:color-mix(in srgb,var(--secondary) 80%,transparent)}.hover\:bg-white\/20:hover{background-color:#fff3}.hover\:bg-yellow-700:hover{--tw-bg-opacity: 1;background-color:rgb(161 98 7 / var(--tw-bg-opacity, 1))}.hover\:from-purple-700:hover{--tw-gradient-from: #7e22ce var(--tw-gradient-from-position);--tw-gradient-to: rgb(126 34 206 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-red-500\/20:hover{--tw-gradient-from: rgb(239 68 68 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:to-orange-500\/20:hover{--tw-gradient-to: rgb(249 115 22 / .2) var(--tw-gradient-to-position)}.hover\:to-pink-700:hover{--tw-gradient-to: #be185d var(--tw-gradient-to-position)}.hover\:text-accent-foreground:hover{--tw-text-opacity: 1;color:color-mix(in srgb,var(--accent-foreground) NaN%,transparent)}.hover\:text-foreground:hover{--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.hover\:text-orange-700:hover{--tw-text-opacity: 1;color:rgb(194 65 12 / var(--tw-text-opacity, 1))}.hover\:text-primary:hover{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent)}.hover\:text-primary-foreground:hover{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) NaN%,transparent)}.hover\:text-primary\/80:hover{color:color-mix(in srgb,var(--primary) 80%,transparent)}.hover\:text-purple-300:hover{--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-75:hover{opacity:.75}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow:hover{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-2xl:hover{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-red-500\/20:hover{--tw-shadow-color: rgb(239 68 68 / .2);--tw-shadow: var(--tw-shadow-colored)}.hover\:brightness-110:hover{--tw-brightness: brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.hover\:bg-primary:hover{background-color:hsl(var(--primary))}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary) / .8)}.hover\:text-primary:hover{color:hsl(var(--primary))}.hover\:text-primary\/80:hover{color:hsl(var(--primary) / .8)}.hover\:border-primary\/20:hover{border-color:hsl(var(--primary) / .2)}.hover\:bg-primary\/10:hover{background-color:hsl(var(--primary) / .1)}.hover\:bg-primary\/20:hover{background-color:hsl(var(--primary) / .2)}.hover\:border-primary\/30:hover{border-color:hsl(var(--primary) / .3)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:before\:translate-x-\[200\%\]:hover:before{content:var(--tw-content);--tw-translate-x: 200%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:before\:opacity-100:hover:before{content:var(--tw-content);opacity:1}.focus\:scale-105:focus{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.focus\:border-transparent:focus{border-color:transparent}.focus\:bg-accent:focus{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--accent) NaN%,transparent)}.focus\:bg-primary\/15:focus{background-color:color-mix(in srgb,var(--primary) 15%,transparent)}.focus\:text-accent-foreground:focus{--tw-text-opacity: 1;color:color-mix(in srgb,var(--accent-foreground) NaN%,transparent)}.focus\:text-primary:focus{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent)}.focus\:shadow-md:focus{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-primary:focus{--tw-ring-opacity: 1;--tw-ring-color: color-mix(in srgb, var(--primary) NaN%, transparent)}.focus\:ring-purple-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.focus\:ring-ring:focus{--tw-ring-opacity: 1;--tw-ring-color: color-mix(in srgb, var(--ring) NaN%, transparent)}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus\:ring-offset-gray-900:focus{--tw-ring-offset-color: #111827}.focus\:text-primary:focus{color:hsl(var(--primary))}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: color-mix(in srgb, var(--ring) NaN%, transparent)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-muted:disabled{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) NaN%,transparent)}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:inline-block{display:inline-block}.group:hover .group-hover\:-translate-y-full{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-2{--tw-translate-x: .5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group\/social:hover .group-hover\/social\:scale-110,.group:hover .group-hover\:scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-\[1\.02\]{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-primary\/30{border-color:color-mix(in srgb,var(--primary) 30%,transparent)}.group:hover .group-hover\:leading-normal{line-height:1.5}.group\/social:hover .group-hover\/social\:text-primary{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent)}.group:hover .group-hover\:text-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.group:hover .group-hover\:text-muted-foreground{--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) NaN%,transparent)}.group:hover .group-hover\:text-primary{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent)}.group\/social:hover .group-hover\/social\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}.group\/social:hover .group-hover\/social\:shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group\/social:hover .group-hover\/social\:text-primary,.group:hover .group-hover\:text-primary{color:hsl(var(--primary))}.group:hover .group-hover\:border-primary\/30{border-color:hsl(var(--primary) / .3)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[active\]\:bg-accent\/50[data-active]{background-color:color-mix(in srgb,var(--accent) 50%,transparent)}.data-\[state\=open\]\:bg-accent[data-state=open]{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--accent) NaN%,transparent)}.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:color-mix(in srgb,var(--accent) 50%,transparent)}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.group[data-state=open] .group-data-\[state\=open\]\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.prose-img\:border-0 :is(:where(img):not(:where([class~=not-prose],[class~=not-prose] *))){border-width:0px}@media (min-width: 640px){.sm\:mb-0{margin-bottom:0}.sm\:block{display:block}.sm\:inline-flex{display:inline-flex}.sm\:w-1\/2{width:50%}.sm\:w-\[400px\]{width:400px}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-row-reverse{flex-direction:row-reverse}.sm\:items-start{align-items:flex-start}.sm\:items-end{align-items:flex-end}.sm\:items-center{align-items:center}.sm\:justify-start{justify-content:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:gap-4{gap:1rem}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1.5rem * var(--tw-space-x-reverse));margin-left:calc(1.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.sm\:p-6{padding:1.5rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-left{text-align:left}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 768px){.md\:absolute{position:absolute}.md\:block{display:block}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:hidden{display:none}.md\:h-64{height:16rem}.md\:w-3\/4{width:75%}.md\:w-\[500px\]{width:500px}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:p-6{padding:1.5rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-base{font-size:1rem;line-height:1.5rem}}@media (min-width: 1024px){.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:h-64{height:16rem}.lg\:h-72{height:18rem}.lg\:w-1\/2{width:50%}.lg\:w-64{width:16rem}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-\[\.75fr_1fr\]{grid-template-columns:.75fr 1fr}.lg\:flex-row{flex-direction:row}.lg\:p-8{padding:2rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-24{padding-top:6rem;padding-bottom:6rem}.lg\:text-2xl{font-size:1.5rem;line-height:2rem}.lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-6xl{font-size:3.75rem;line-height:1}}@media (min-width: 1280px){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (prefers-color-scheme: dark){.dark\:border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.dark\:border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.dark\:border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.dark\:border-green-800{--tw-border-opacity: 1;border-color:rgb(22 101 52 / var(--tw-border-opacity, 1))}.dark\:border-primary\/40{border-color:color-mix(in srgb,var(--primary) 40%,transparent)}.dark\:border-primary\/60{border-color:color-mix(in srgb,var(--primary) 60%,transparent)}.dark\:border-purple-800{--tw-border-opacity: 1;border-color:rgb(107 33 168 / var(--tw-border-opacity, 1))}.dark\:border-red-400\/40{border-color:#f8717166}.dark\:border-red-800{--tw-border-opacity: 1;border-color:rgb(153 27 27 / var(--tw-border-opacity, 1))}.dark\:border-yellow-800{--tw-border-opacity: 1;border-color:rgb(133 77 14 / var(--tw-border-opacity, 1))}.dark\:bg-black\/20{background-color:#0003}.dark\:bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-900\/20{background-color:#11182733}.dark\:bg-green-800{--tw-bg-opacity: 1;background-color:rgb(22 101 52 / var(--tw-bg-opacity, 1))}.dark\:bg-green-900\/20{background-color:#14532d33}.dark\:bg-green-900\/30{background-color:#14532d4d}.dark\:bg-indigo-900\/20{background-color:#312e8133}.dark\:bg-orange-900\/20{background-color:#7c2d1233}.dark\:bg-primary\/20{background-color:color-mix(in srgb,var(--primary) 20%,transparent)}.dark\:bg-primary\/30{background-color:color-mix(in srgb,var(--primary) 30%,transparent)}.dark\:bg-purple-900\/20{background-color:#581c8733}.dark\:bg-purple-900\/30{background-color:#581c874d}.dark\:bg-red-800{--tw-bg-opacity: 1;background-color:rgb(153 27 27 / var(--tw-bg-opacity, 1))}.dark\:bg-red-900\/20{background-color:#7f1d1d33}.dark\:bg-yellow-800{--tw-bg-opacity: 1;background-color:rgb(133 77 14 / var(--tw-bg-opacity, 1))}.dark\:bg-yellow-900\/20{background-color:#713f1233}.dark\:from-red-400\/15{--tw-gradient-from: rgb(248 113 113 / .15) var(--tw-gradient-from-position);--tw-gradient-to: rgb(248 113 113 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:to-orange-400\/15{--tw-gradient-to: rgb(251 146 60 / .15) var(--tw-gradient-to-position)}.dark\:text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.dark\:text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.dark\:text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.dark\:text-green-100{--tw-text-opacity: 1;color:rgb(220 252 231 / var(--tw-text-opacity, 1))}.dark\:text-green-200{--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity, 1))}.dark\:text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.dark\:text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.dark\:text-primary\/60{color:color-mix(in srgb,var(--primary) 60%,transparent)}.dark\:text-primary\/80{color:color-mix(in srgb,var(--primary) 80%,transparent)}.dark\:text-purple-200{--tw-text-opacity: 1;color:rgb(233 213 255 / var(--tw-text-opacity, 1))}.dark\:text-purple-300{--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity, 1))}.dark\:text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.dark\:text-red-100{--tw-text-opacity: 1;color:rgb(254 226 226 / var(--tw-text-opacity, 1))}.dark\:text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.dark\:text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:text-yellow-200{--tw-text-opacity: 1;color:rgb(254 240 138 / var(--tw-text-opacity, 1))}.dark\:text-primary\/80{color:hsl(var(--primary) / .8)}.dark\:bg-primary\/20{background-color:hsl(var(--primary) / .2)}.dark\:hover\:border-primary\/60:hover{border-color:color-mix(in srgb,var(--primary) 60%,transparent)}.dark\:hover\:border-red-400\/60:hover{border-color:#f8717199}.dark\:hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-primary\/20:hover{background-color:color-mix(in srgb,var(--primary) 20%,transparent)}.dark\:hover\:from-red-400\/25:hover{--tw-gradient-from: rgb(248 113 113 / .25) var(--tw-gradient-from-position);--tw-gradient-to: rgb(248 113 113 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.dark\:hover\:to-orange-400\/25:hover{--tw-gradient-to: rgb(251 146 60 / .25) var(--tw-gradient-to-position)}.dark\:hover\:text-primary\/80:hover{color:color-mix(in srgb,var(--primary) 80%,transparent)}.dark\:hover\:shadow-red-400\/25:hover{--tw-shadow-color: rgb(248 113 113 / .25);--tw-shadow: var(--tw-shadow-colored)}.dark\:hover\:text-primary\/80:hover{color:hsl(var(--primary) / .8)}.dark\:hover\:bg-primary\/20:hover{background-color:hsl(var(--primary) / .2)}}:root{--ease-smooth: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.175, .885, .32, 1.275);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--ease-cyber: cubic-bezier(.19, 1, .22, 1);--ease-matrix: cubic-bezier(.23, 1, .32, 1);--ease-hack: cubic-bezier(.77, 0, .175, 1);--duration-instant: 50ms;--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s;--duration-slower: .75s;--color-cyber-green: hsl(var(--primary));--color-cyber-blue: hsl(var(--primary));--color-cyber-red: hsl(var(--destructive));--color-cyber-orange: hsl(var(--chart-1));--color-matrix-green: hsl(var(--chart-3));--animation-scale: 1;--animation-duration-multiplier: 1}@media (prefers-reduced-motion: reduce){:root{--animation-scale: 0;--animation-duration-multiplier: .01}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}to{transform:scale(1);opacity:1}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-2px)}20%,40%,60%,80%{transform:translate(2px)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes wave{0%{transform:rotate(0)}10%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}30%{transform:rotate(14deg)}40%{transform:rotate(-4deg)}50%{transform:rotate(10deg)}60%{transform:rotate(0)}to{transform:rotate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px rgba(var(--color-glow),.5),0 0 40px rgba(var(--color-glow),.3),0 0 60px rgba(var(--color-glow),.1)}50%{box-shadow:0 0 30px rgba(var(--color-glow),.7),0 0 60px rgba(var(--color-glow),.5),0 0 90px rgba(var(--color-glow),.3)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-fadeIn{animation:fadeIn .6s ease-out}.animate-slideInLeft{animation:slideInLeft .6s ease-out}.animate-slideInRight{animation:slideInRight .6s ease-out}.animate-scaleIn{animation:scaleIn .5s ease-out}.animate-float{animation:float 3s ease-in-out infinite}.animate-glowPulse{animation:glowPulse 2s ease-in-out infinite}.animate-gradientShift{background-size:200% 200%;animation:gradientShift 4s ease infinite}.stagger-children>*{opacity:0;animation:fadeIn .6s ease-out forwards}.hover-lift{transition:all .3s cubic-bezier(.4,0,.2,1)}.hover-lift:hover{transform:translateY(-5px);box-shadow:0 20px 25px -5px rgba(var(--color-shadow),.1),0 10px 10px -5px rgba(var(--color-shadow),.04)}.hover-underline{position:relative;text-decoration:none}.hover-underline:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:linear-gradient(90deg,rgba(var(--color-gradient-start),1),rgba(var(--color-gradient-end),1));transition:width .3s ease}.hover-underline:hover:after{width:100%}.parallax{position:relative;transform-style:preserve-3d;transition:transform .5s cubic-bezier(.4,0,.2,1)}::view-transition-old(root){animation:.3s ease-out both fade-out}::view-transition-new(root){animation:.3s ease-out both fade-in}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.spinner{width:40px;height:40px;border:3px solid rgba(var(--color-accent),.1);border-top-color:rgba(var(--color-accent),.8);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{transition:all .5s ease-out}.page-enter-to{opacity:1;transform:translateY(0)}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:all .6s cubic-bezier(.4,0,.2,1)}.animate-on-scroll.animate-in{opacity:1;transform:translateY(0)}.animate-fade-up{opacity:0;transform:translateY(40px);transition:all .8s ease-out}.animate-fade-up.animate-in{opacity:1;transform:translateY(0)}.animate-slide-in{opacity:0;transform:translate(-40px);transition:all .8s ease-out}.animate-slide-in.animate-in{opacity:1;transform:translate(0)}.animate-scale-in{opacity:0;transform:scale(.8);transition:all .6s ease-out}.animate-scale-in.animate-in{opacity:1;transform:scale(1)}.text-reveal{overflow:hidden}.char-reveal{display:inline-block;opacity:0;transform:translateY(20px);animation:charReveal .6s ease forwards}@keyframes charReveal{to{opacity:1;transform:translateY(0)}}@keyframes blob{0%{transform:translate(0) scale(1)}33%{transform:translate(30px,-50px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}to{transform:translate(0) scale(1)}}.animate-blob{animation:blob 7s infinite}.magnetic{transition:transform .2s ease-out}.hover-bounce:hover{animation:bounce .5s ease-in-out}.hover-pulse:hover{animation:pulse 1s ease-in-out infinite}.hover-shake:hover{animation:shake .5s ease-in-out}.hover-rotate:hover{animation:rotate .5s ease-in-out}.hover-wave:hover{animation:wave 1s ease-in-out}@keyframes gradientFlow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-gradient{background-size:200% 200%;animation:gradientFlow 5s ease infinite}.parallax{transition:transform .5s cubic-bezier(.4,0,.2,1)}@keyframes loadingDots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}to{content:""}}.loading-dots:after{content:"";animation:loadingDots 1.5s infinite}.fade-in-container{opacity:0;transform:var(--fade-transform);transition:opacity var(--fade-duration) var(--fade-easing) var(--fade-delay),transform var(--fade-duration) var(--fade-easing) var(--fade-delay);will-change:opacity,transform}.fade-in-container.fade-in-active,.fade-in-container .fade-in-cascade-active{opacity:1;transform:translateY(0) translate(0) scale(1)}.fade-in-cascade .fade-in-word,.fade-in-cascade .fade-in-char{opacity:0;transform:var(--fade-transform);transition:opacity var(--fade-duration) var(--fade-easing),transform var(--fade-duration) var(--fade-easing)}.slide-in-container{opacity:0;transform:var(--slide-transform);transition:opacity var(--slide-duration) var(--slide-easing) var(--slide-delay),transform var(--slide-duration) var(--slide-easing) var(--slide-delay);will-change:opacity,transform}.slide-in-container.slide-in-active,.slide-in-container .slide-in-cascade-active{opacity:1;transform:translateY(0) translate(0) scale(1)}.slide-in-up{--slide-transform: translateY(var(--slide-distance))}.slide-in-down{--slide-transform: translateY(calc(-1 * var(--slide-distance)))}.slide-in-left{--slide-transform: translateX(var(--slide-distance))}.slide-in-right{--slide-transform: translateX(calc(-1 * var(--slide-distance)))}.slide-in-up-left{--slide-transform: translate(var(--slide-distance), var(--slide-distance))}.slide-in-up-right{--slide-transform: translate(calc(-1 * var(--slide-distance)), var(--slide-distance))}.slide-in-down-left{--slide-transform: translate(var(--slide-distance), calc(-1 * var(--slide-distance)))}.slide-in-down-right{--slide-transform: translate(calc(-1 * var(--slide-distance)), calc(-1 * var(--slide-distance)))}.scale-in-container{opacity:0;transform:var(--scale-transform-initial);transform-origin:var(--scale-origin);transition:opacity var(--scale-duration) var(--scale-easing) var(--scale-delay),transform var(--scale-duration) var(--scale-easing) var(--scale-delay);will-change:opacity,transform}.scale-in-container.scale-in-active,.scale-in-container .scale-in-cascade-active{opacity:1;transform:var(--scale-transform-final)}.scale-in-hoverable:hover{transform:var(--scale-transform-hover)!important;transition-duration:var(--scale-hover-duration)}.stagger-children-container{--stagger-duration: .6s;--stagger-delay: 0ms;--stagger-distance: 30px;--stagger-easing: var(--ease-smooth)}.stagger-child{opacity:0;transform:var(--stagger-transform);transition:opacity var(--stagger-duration) var(--stagger-easing),transform var(--stagger-duration) var(--stagger-easing);will-change:opacity,transform}.stagger-child.stagger-child-active{opacity:1;transform:translateY(0) translate(0) scale(1) rotate(0)}.stagger-child-slide-up{--stagger-transform: translateY(var(--stagger-distance))}.stagger-child-slide-down{--stagger-transform: translateY(calc(-1 * var(--stagger-distance)))}.stagger-child-slide-left{--stagger-transform: translateX(var(--stagger-distance))}.stagger-child-slide-right{--stagger-transform: translateX(calc(-1 * var(--stagger-distance)))}.stagger-child-scale{--stagger-transform: scale(.8)}.stagger-child-rotate{--stagger-transform: rotate(-10deg) scale(.9)}.stagger-child-flip{--stagger-transform: rotateY(90deg)}.parallax-scroll-container{will-change:transform;transition:transform .1s linear}.parallax-disabled{transform:none!important}.page-transition-container{transition:opacity var(--transition-duration) var(--transition-easing) var(--transition-delay),transform var(--transition-duration) var(--transition-easing) var(--transition-delay);will-change:opacity,transform}.page-transition-fade.page-transition-in{animation:pageTransitionFadeIn var(--transition-duration) var(--transition-easing) var(--transition-delay) both}.page-transition-fade.page-transition-out{animation:pageTransitionFadeOut var(--transition-duration) var(--transition-easing) var(--transition-delay) both}@keyframes pageTransitionFadeIn{0%{opacity:0}to{opacity:1}}@keyframes pageTransitionFadeOut{0%{opacity:1}to{opacity:0}}.page-transition-slide-left.page-transition-in{animation:pageTransitionSlideInLeft var(--transition-duration) var(--transition-easing) var(--transition-delay) both}.page-transition-slide-left.page-transition-out{animation:pageTransitionSlideOutLeft var(--transition-duration) var(--transition-easing) var(--transition-delay) both}@keyframes pageTransitionSlideInLeft{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes pageTransitionSlideOutLeft{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes matrixRain{0%{transform:translateY(-100vh);opacity:1}to{transform:translateY(100vh);opacity:0}}.matrix-char{color:var(--color-matrix-green);animation:matrixRain 3s linear infinite;animation-delay:calc(var(--char-index, 0) * .1s)}@keyframes cyberGlitch{0%,to{transform:translate(0)}10%{transform:translate(-2px) skew(-5deg)}20%{transform:translate(2px) skew(5deg)}30%{transform:translate(-1px) skew(-2deg)}40%{transform:translate(1px) skew(2deg)}50%{transform:translate(0) skew(0)}}.cyber-glitch{animation:cyberGlitch .3s ease-in-out}.cyber-glitch:before{content:attr(data-text);position:absolute;left:2px;color:var(--color-cyber-red);z-index:-1;animation:cyberGlitch .3s ease-in-out}.cyber-glitch:after{content:attr(data-text);position:absolute;left:-2px;color:var(--color-cyber-blue);z-index:-2;animation:cyberGlitch .3s ease-in-out reverse}@keyframes terminalTyping{0%{width:0}to{width:100%}}@keyframes terminalCursor{0%,50%{opacity:1}51%,to{opacity:0}}.terminal-text{overflow:hidden;white-space:nowrap;animation:terminalTyping 2s steps(40) both}.terminal-cursor:after{content:"|";color:var(--color-cyber-green);animation:terminalCursor 1s infinite}@keyframes scanLine{0%{transform:translateY(-100%)}to{transform:translateY(100vh)}}.scan-line{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--color-cyber-green) 50%,transparent 100%);animation:scanLine 2s linear infinite}@keyframes hologram{0%,to{opacity:.8;filter:hue-rotate(0deg)}50%{opacity:1;filter:hue-rotate(90deg)}}.hologram{animation:hologram 3s ease-in-out infinite;background:linear-gradient(45deg,#00ff411a,#0099ff1a,#ff00401a)}.magnetic{transition:transform .2s var(--ease-smooth);cursor:pointer}.magnetic:hover{transform:scale(1.05) translateZ(0)}@keyframes ripple{0%{transform:scale(0);opacity:.8}to{transform:scale(4);opacity:0}}.ripple-effect{position:relative;overflow:hidden}.ripple-effect:before{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;border-radius:50%;background:#fff6;transform:translate(-50%,-50%) scale(0);transition:transform .6s,opacity .6s}.ripple-effect:active:before{animation:ripple .6s ease-out}@keyframes cyberGlow{0%,to{box-shadow:0 0 5px var(--color-cyber-green),0 0 10px var(--color-cyber-green),0 0 15px var(--color-cyber-green)}50%{box-shadow:0 0 10px var(--color-cyber-green),0 0 20px var(--color-cyber-green),0 0 30px var(--color-cyber-green)}}.cyber-glow{animation:cyberGlow 2s ease-in-out infinite}@keyframes securityBadge{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.1)}to{transform:rotate(360deg) scale(1)}}.security-badge{animation:securityBadge 3s ease-in-out infinite}.gpu-accelerated{transform:translateZ(0);backface-visibility:hidden;perspective:1000px}.reduce-motion .animate-fadeIn,.reduce-motion .animate-slideInLeft,.reduce-motion .animate-slideInRight,.reduce-motion .animate-scaleIn{animation:none!important;opacity:1!important;transform:none!important}.blog-card{transition:transform var(--duration-normal) var(--ease-smooth),box-shadow var(--duration-normal) var(--ease-smooth)}.blog-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 10px 30px #0000001a,0 0 20px rgba(var(--color-cyber-green),.1)}.nav-menu-item{position:relative;transition:color var(--duration-fast) var(--ease-smooth)}.nav-menu-item:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--color-cyber-green);transition:width var(--duration-normal) var(--ease-smooth)}.nav-menu-item:hover:after,.nav-menu-item.active:after{width:100%}.search-input,.search-input-enhanced{transition:border-color var(--duration-fast) var(--ease-smooth),box-shadow var(--duration-fast) var(--ease-smooth),background-color var(--duration-fast) var(--ease-smooth)}.search-input:focus,.search-input-enhanced:focus{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring))}.search-input-enhanced:hover{border-color:hsl(var(--border) / .6);background-color:hsl(var(--card) / .7);box-shadow:var(--shadow-md)}.tag{transition:background-color var(--duration-fast) var(--ease-smooth),transform var(--duration-fast) var(--ease-smooth)}.tag:hover{transform:translateY(-2px) scale(1.05);background-color:var(--color-cyber-green)}.animate-pulse-slow{animation:pulse 3s ease-in-out infinite}.animate-bounce-subtle{animation:bounce 2s ease-in-out infinite;transform:translateY(-2px)}.animate-glow{animation:cyberGlow 2s ease-in-out infinite}.animate-typing{animation:terminalTyping 2s steps(40) both}.animate-glitch{animation:cyberGlitch .5s ease-in-out}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.animate-delay-400{animation-delay:.4s}.animate-delay-500{animation-delay:.5s}.animate-delay-600{animation-delay:.6s}.animate-delay-700{animation-delay:.7s}.animate-delay-800{animation-delay:.8s}.animate-delay-900{animation-delay:.9s}.animate-delay-1000{animation-delay:1s}.stagger-delay-50{animation-delay:50ms}.stagger-delay-100{animation-delay:.1s}.stagger-delay-150{animation-delay:.15s}.stagger-delay-200{animation-delay:.2s}.stagger-delay-250{animation-delay:.25s}.stagger-delay-300{animation-delay:.3s}.stagger-delay-350{animation-delay:.35s}.stagger-delay-400{animation-delay:.4s}.stagger-delay-450{animation-delay:.45s}.stagger-delay-500{animation-delay:.5s}.hover-lift:hover{transform:translateY(-4px)}.hover-glow:hover{box-shadow:0 0 20px rgba(var(--color-cyber-green),.3)}.hover-scale:hover{transform:scale(1.05)}.focus-ring:focus{outline:2px solid var(--color-cyber-green);outline-offset:2px}.theme-bg-primary{background-color:hsl(var(--primary))}.theme-bg-secondary{background-color:hsl(var(--secondary))}.theme-bg-accent{background-color:hsl(var(--accent))}.theme-bg-muted{background-color:hsl(var(--muted))}.theme-bg-card{background-color:hsl(var(--card))}.theme-bg-popover{background-color:hsl(var(--popover))}.theme-bg-destructive{background-color:hsl(var(--destructive))}.theme-text-primary{color:hsl(var(--primary))}.theme-text-secondary{color:hsl(var(--secondary-foreground))}.theme-text-accent{color:hsl(var(--accent-foreground))}.theme-text-muted{color:hsl(var(--muted-foreground))}.theme-text-card{color:hsl(var(--card-foreground))}.theme-text-popover{color:hsl(var(--popover-foreground))}.theme-text-destructive{color:hsl(var(--destructive-foreground))}.theme-border-primary{border-color:hsl(var(--primary))}.theme-border-secondary{border-color:hsl(var(--secondary))}.theme-border-accent{border-color:hsl(var(--accent))}.theme-border-muted{border-color:hsl(var(--muted))}.theme-border-input{border-color:hsl(var(--input))}.theme-border-ring{border-color:hsl(var(--ring))}.theme-shadow-xs{box-shadow:var(--shadow-xs)}.theme-shadow-sm{box-shadow:var(--shadow-sm)}.theme-shadow-md{box-shadow:var(--shadow-md)}.theme-shadow-lg{box-shadow:var(--shadow-lg)}.theme-shadow-xl{box-shadow:var(--shadow-xl)}.theme-shadow-2xl{box-shadow:var(--shadow-2xl)}.theme-radius{border-radius:var(--radius)}.theme-radius-sm{border-radius:calc(var(--radius) - .125rem)}.theme-radius-lg{border-radius:calc(var(--radius) + .125rem)}.theme-radius-xl{border-radius:calc(var(--radius) + .25rem)}#main-content{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--background) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.animate-gradient-text{background-size:200% 200%;animation:gradientShift 4s ease-in-out infinite}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.animate-fade-in-up{opacity:0;transform:translateY(20px);animation:fadeInUp .8s ease-out forwards}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.stagger-children>*{opacity:0;transform:translateY(20px);animation:fadeInUp .6s ease-out forwards}.stagger-children>*:nth-child(1){animation-delay:.1s}.stagger-children>*:nth-child(2){animation-delay:.2s}.stagger-children>*:nth-child(3){animation-delay:.3s}.stagger-children>*:nth-child(4){animation-delay:.4s}.stagger-children>*:nth-child(5){animation-delay:.5s}.stagger-children>*:nth-child(6){animation-delay:.6s}.stagger-children>*:nth-child(7){animation-delay:.7s}.stagger-children>*:nth-child(8){animation-delay:.8s}.link-button{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) NaN%,transparent);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;background-color:hsl(var(--primary))}.link-button:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:.9;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}#unmuteBtn{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--background) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}#unmuteBtn:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) NaN%,transparent);background-color:hsl(var(--primary))}.globe-container{position:relative}.globe-container:before{content:"";pointer-events:none;position:absolute;inset:0;z-index:0;background:radial-gradient(circle at center,hsl(var(--primary) / .05) 0%,transparent 70%);border-radius:50%}.stats-card{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.stats-card:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);border-color:hsl(var(--primary) / .5)}.stats-card:hover .stats-number{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.tech-card{--tw-translate-y: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:0;animation:fadeInUp .6s ease-out forwards}.tech-card:nth-child(1){animation-delay:.1s}.tech-card:nth-child(2){animation-delay:.2s}.tech-card:nth-child(3){animation-delay:.3s}.tech-card:nth-child(4){animation-delay:.4s}.tech-card:nth-child(5){animation-delay:.5s}.tech-card:nth-child(6){animation-delay:.6s}#newsletter .rounded-xl{animation:fade-in-up .6s ease-out forwards;opacity:0;transform:translateY(20px);animation:fadeInUp .8s ease-out forwards;animation-delay:.2s}.category-badge{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.category-badge:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.enhanced-button{position:relative;overflow:hidden}.enhanced-button:before{content:"";position:absolute;inset:0;--tw-translate-x: -200%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #fff var(--tw-gradient-from-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #fff var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: #fff var(--tw-gradient-to-position);transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.7s;opacity:.2}.enhanced-button:hover:before{--tw-translate-x: 200%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.skeleton-loader{background:linear-gradient(90deg,hsl(var(--muted)),hsl(var(--muted) / .5),hsl(var(--muted)));background-size:200% 100%;animation:shimmer 1.5s infinite linear}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.focus-visible:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px;--tw-ring-color: hsl(var(--primary))}header{position:sticky;top:0;z-index:50;width:100%;background:hsl(var(--background) / .95);backdrop-filter:blur(16px) saturate(180%) brightness(1.1);-webkit-backdrop-filter:blur(16px) saturate(180%) brightness(1.1);border-bottom:1px solid hsl(var(--border) / .3);box-shadow:0 4px 24px hsl(var(--foreground) / .08);transition:all .3s cubic-bezier(.4,0,.2,1);min-height:80px}#skip-to-content{position:absolute;top:-100%;left:4rem;z-index:50;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent);padding:.5rem .75rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) NaN%,transparent);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background-color:hsl(var(--primary))}#skip-to-content:focus{top:1rem}.nav-container{margin-left:auto;margin-right:auto;display:flex;width:100%;flex-direction:column;align-items:center;justify-content:space-between;padding-left:1rem;padding-right:1rem}@media (min-width: 640px){.nav-container{flex-direction:row;padding-left:1.5rem;padding-right:1.5rem}}@media (min-width: 768px){.nav-container{padding-left:2rem;padding-right:2rem}}.nav-container{max-width:100%}.top-nav-wrap{position:relative;display:flex;width:100%;align-items:flex-start;justify-content:space-between;padding:1rem}@media (min-width: 640px){.top-nav-wrap{align-items:center;padding-top:2rem;padding-bottom:2rem}}.logo{position:absolute;padding-top:.25rem;padding-bottom:.25rem;font-size:1.25rem;line-height:1.75rem;font-weight:700}@media (min-width: 640px){.logo{position:static;font-size:1.5rem;line-height:2rem}}.logo{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent);color:hsl(var(--primary));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.5s}.logo:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.logo{background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--primary)),hsl(var(--secondary)));background-size:200% 200%;animation:gradientShift 6s ease-in-out infinite;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;letter-spacing:-.02em;position:relative}.logo:hover{background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--secondary)),hsl(var(--primary)));background-size:150% 150%;animation:gradientShift 2s ease-in-out infinite;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 8px hsl(var(--primary)))}nav{display:flex;width:100%;flex-direction:column;align-items:center}@media (min-width: 640px){nav{margin-left:.5rem;flex-direction:row;justify-content:flex-end}nav>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}nav{padding-top:0;padding-bottom:0}}nav ul{margin-top:1rem;display:grid;width:11rem;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));-moz-column-gap:.5rem;column-gap:.5rem;row-gap:.5rem}@media (min-width: 640px){nav ul{margin-left:0;margin-top:0;display:flex;width:auto;align-items:center;-moz-column-gap:1.25rem;column-gap:1.25rem;row-gap:0px}}nav ul li{grid-column:span 2 / span 2;display:flex;align-items:center;justify-content:center}nav ul li a{width:100%;padding:.5rem 1rem;text-align:center;font-weight:500}@media (min-width: 640px){nav ul li a{margin-top:0;margin-bottom:0;padding:.5rem .75rem}}nav ul li a{border-radius:.5rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;position:relative;overflow:hidden;font-size:.875rem;line-height:1.25rem;letter-spacing:.025em;border-width:1px;border-color:transparent;color:hsl(var(--foreground));background-color:transparent}nav ul li a:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground));border-color:hsl(var(--border));box-shadow:0 4px 12px hsl(var(--primary) / .15);transform:scale(1.05)}nav ul li a:before{position:absolute;inset:0;--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.7s;background:linear-gradient(to right,transparent,hsl(var(--primary) / .1),transparent);content:""}nav ul li a:hover:before{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}nav ul li a:after{content:"";position:absolute;bottom:0;left:50%;height:.125rem;width:0px;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent);background-color:hsl(var(--primary));--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}nav ul li a:hover:after{width:75%}nav ul li:nth-last-child(2) a{width:auto}nav ul li:nth-last-child(1),nav ul li:nth-last-child(2){grid-column:span 1 / span 1}nav a.active{font-weight:600;--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));position:relative;color:hsl(var(--primary));background-color:hsl(var(--primary) / .1);border-color:hsl(var(--primary) / .3)}nav a.active:after{width:75%}nav a.active svg{fill:var(--primary)}nav button{padding:.25rem;color:hsl(var(--foreground));transition:color .2s ease}nav button:hover{color:hsl(var(--primary))}nav button svg{height:1.5rem;width:1.5rem;fill:currentColor}:global([data-radix-navigation-menu-viewport]){background:hsl(var(--popover))!important;backdrop-filter:blur(20px) saturate(180%) brightness(1.1)!important;-webkit-backdrop-filter:blur(20px) saturate(180%) brightness(1.1)!important;border:1px solid hsl(var(--border))!important;box-shadow:0 20px 40px hsl(var(--foreground) / .1)!important;z-index:1000!important;pointer-events:auto!important}:global([data-radix-navigation-menu-content]){animation-duration:.3s!important;pointer-events:auto!important;display:block!important;visibility:visible!important;opacity:1!important}:global([data-radix-navigation-menu-content] a){pointer-events:auto!important;cursor:pointer!important;position:relative!important;z-index:10!important}:global([data-radix-navigation-menu-content] a:hover){pointer-events:auto!important}:global([data-radix-navigation-menu-content] a:active){pointer-events:auto!important}:global([data-radix-navigation-menu-content] a:focus){pointer-events:auto!important}:global([data-radix-navigation-menu-viewport]){display:block!important;visibility:visible!important;opacity:1!important}:global([data-radix-navigation-menu-content]){display:block!important;visibility:visible!important;opacity:1!important}:global([data-radix-navigation-menu-item]){pointer-events:auto!important}:global([data-radix-navigation-menu-trigger]){pointer-events:auto!important;cursor:pointer!important}:global([data-radix-navigation-menu-content]){animation-duration:.3s!important}:global(.navigation-menu-trigger[data-state=open]){background:hsl(var(--accent))!important;color:hsl(var(--accent-foreground))!important;transform:scale(1.05)!important}:global([data-radix-navigation-menu-content]::-webkit-scrollbar){width:6px}:global([data-radix-navigation-menu-content]::-webkit-scrollbar-track){background:hsl(var(--muted));border-radius:3px}:global([data-radix-navigation-menu-content]::-webkit-scrollbar-thumb){background:hsl(var(--muted-foreground) / .3);border-radius:3px}:global([data-radix-navigation-menu-content]::-webkit-scrollbar-thumb:hover){background:hsl(var(--muted-foreground) / .5)}#main-content{margin-left:auto;margin-right:auto;width:100%;padding-left:0;padding-right:0;padding-bottom:1rem;max-width:100%}@media (min-width: 640px){#main-content{padding-left:0;padding-right:0}}@media (min-width: 768px){#main-content{padding-left:0;padding-right:0}}#main-content h1{font-size:1.5rem;line-height:2rem;font-weight:600}@media (min-width: 640px){#main-content h1{font-size:1.875rem;line-height:2.25rem}}@media (min-width: 1024px){#main-content h1{font-size:2.25rem;line-height:2.5rem}}@media (min-width: 1280px){#main-content h1{font-size:3rem;line-height:1}}#main-content p{margin-bottom:1.5rem;margin-top:.5rem;font-size:.875rem;line-height:1.25rem;font-style:italic}@media (min-width: 640px){#main-content p{font-size:1rem;line-height:1.5rem}}@media (min-width: 1024px){#main-content p{font-size:1.125rem;line-height:1.75rem}}footer{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding-top:1.5rem;padding-bottom:1.5rem}@media (min-width: 640px){footer{flex-direction:row}}footer p{margin-bottom:1rem;text-align:center;font-size:.875rem;line-height:1.25rem}@media (min-width: 640px){footer p{margin-bottom:0}}.breadcrumbs{margin-left:auto;margin-right:auto;margin-bottom:1rem;width:100%;padding-left:1rem;padding-right:1rem}.tag{display:inline-block;padding:.25rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;border-radius:.375rem}.tag:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.tag{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground));border:1px solid hsl(var(--border))}.tag a{color:hsl(var(--accent-foreground));text-decoration:none}.tag svg{margin-right:.25rem;height:1rem;width:1rem;--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));fill:currentColor}.tag:hover{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:hsl(var(--primary));box-shadow:0 4px 12px hsl(var(--primary) / .15)}.theme-toggle{position:relative;display:inline-flex;height:1.5rem;width:2.75rem;flex-shrink:0;cursor:pointer;border-radius:9999px;border-width:2px;border-color:transparent;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.theme-toggle:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: color-mix(in srgb, var(--ring) NaN%, transparent);--tw-ring-offset-width: 2px}.theme-toggle{background-color:hsl(var(--muted));border-color:hsl(var(--border))}.theme-toggle[data-checked=true]{background-color:hsl(var(--primary));border-color:hsl(var(--primary))}.theme-toggle-thumb{pointer-events:none;display:inline-block;height:1.25rem;width:1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:9999px;--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);background-color:hsl(var(--background))}.theme-toggle[data-checked=true] .theme-toggle-thumb{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.theme-toggle-icon{position:absolute;inset:0;display:flex;height:100%;width:100%;align-items:center;justify-content:center;transition-property:opacity;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.theme-toggle-icon svg{height:.75rem;width:.75rem}.theme-toggle-sun{color:hsl(var(--chart-2))}.theme-toggle-moon{color:hsl(var(--primary-foreground))}.theme-toggle[data-checked=false] .theme-toggle-sun{opacity:1}.theme-toggle[data-checked=false] .theme-toggle-moon,.theme-toggle[data-checked=true] .theme-toggle-sun{opacity:0}.theme-toggle[data-checked=true] .theme-toggle-moon{opacity:1}.theme-toggle:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);box-shadow:0 0 20px hsl(var(--primary) / .3)}.theme-toggle[data-checked=true]:hover{box-shadow:0 0 20px hsl(var(--primary) / .5)}.theme-toggle-icon svg{transition:transform .3s ease-in-out}.theme-toggle:hover .theme-toggle-icon svg{transform:rotate(180deg)}@media (max-width: 640px){.theme-toggle{height:1.25rem;width:2.25rem}.theme-toggle-thumb{height:1rem;width:1rem}.theme-toggle[data-checked=true] .theme-toggle-thumb{--tw-translate-x: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.theme-toggle-icon svg{height:.625rem;width:.625rem}}.post-container{margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (min-width: 640px){.post-container{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width: 1024px){.post-container{padding-left:2rem;padding-right:2rem}}@media (min-width: 1280px){.post-container{padding-left:3rem;padding-right:3rem}}.post-container{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--background) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.post-header{margin-bottom:2rem;text-align:center;border-bottom-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);padding-bottom:2rem;border-color:hsl(var(--border))}.post-title{font-size:2.25rem;line-height:2.5rem;font-weight:700;line-height:1.25;letter-spacing:-.025em;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}@media (min-width: 640px){.post-title{font-size:3rem;line-height:1}}.post-title{letter-spacing:-.03em;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;background:linear-gradient(135deg,hsl(var(--foreground)),hsl(var(--primary)),hsl(var(--foreground)));background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.post-meta{margin-top:1rem;--tw-text-opacity: 1;color:color-mix(in srgb,var(--muted-foreground) NaN%,transparent);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1rem}.post-content{font-size:1.125rem;line-height:1.7777778}.post-content :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em}.post-content :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2222222em;line-height:1.4545455;margin-top:1.0909091em;margin-bottom:1.0909091em}.post-content :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.6666667em;margin-bottom:1.6666667em;padding-inline-start:1em}.post-content :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.6666667em;margin-top:0;margin-bottom:.8333333em;line-height:1}.post-content :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.6666667em;margin-top:1.8666667em;margin-bottom:1.0666667em;line-height:1.3333333}.post-content :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.3333333em;margin-top:1.6666667em;margin-bottom:.6666667em;line-height:1.5}.post-content :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7777778em;margin-bottom:.4444444em;line-height:1.5555556}.post-content :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7777778em;margin-bottom:1.7777778em}.post-content :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7777778em;margin-bottom:1.7777778em}.post-content :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.post-content :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7777778em;margin-bottom:1.7777778em}.post-content :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;border-radius:.3125rem;padding-top:.2222222em;padding-inline-end:.4444444em;padding-bottom:.2222222em;padding-inline-start:.4444444em}.post-content :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em}.post-content :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8666667em}.post-content :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.post-content :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;line-height:1.75;margin-top:2em;margin-bottom:2em;border-radius:.375rem;padding-top:1em;padding-inline-end:1.5em;padding-bottom:1em;padding-inline-start:1.5em}.post-content :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em;padding-inline-start:1.5555556em}.post-content :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em;padding-inline-start:1.5555556em}.post-content :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.6666667em;margin-bottom:.6666667em}.post-content :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4444444em}.post-content :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4444444em}.post-content :where(.prose-lg>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.8888889em;margin-bottom:.8888889em}.post-content :where(.prose-lg>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.post-content :where(.prose-lg>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em}.post-content :where(.prose-lg>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.post-content :where(.prose-lg>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.3333333em}.post-content :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.8888889em;margin-bottom:.8888889em}.post-content :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em}.post-content :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em}.post-content :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.6666667em;padding-inline-start:1.5555556em}.post-content :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:3.1111111em;margin-bottom:3.1111111em}.post-content :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.post-content :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.post-content :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.post-content :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.post-content :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;line-height:1.5}.post-content :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.75em;padding-bottom:.75em;padding-inline-start:.75em}.post-content :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.post-content :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.post-content :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.75em;padding-inline-end:.75em;padding-bottom:.75em;padding-inline-start:.75em}.post-content :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.post-content :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.post-content :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7777778em;margin-bottom:1.7777778em}.post-content :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.post-content :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8888889em;line-height:1.5;margin-top:1em}.post-content :where(.prose-lg>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.post-content :where(.prose-lg>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.post-content{margin-left:auto;margin-right:auto;max-width:none;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.post-content .prose{color:hsl(var(--foreground))}.post-content .prose h1,.post-content .prose h2,.post-content .prose h3,.post-content .prose h4,.post-content .prose h5,.post-content .prose h6{font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);scroll-margin-top:5rem}.post-content .prose h1{margin-bottom:2rem;margin-top:3rem;font-size:2.25rem;line-height:2.5rem;font-weight:700;letter-spacing:-.03em}.post-content .prose h2{margin-bottom:1.5rem;margin-top:2.5rem;font-size:1.875rem;line-height:2.25rem;font-weight:600;letter-spacing:-.02em}.post-content .prose h3{margin-bottom:1rem;margin-top:2rem;font-size:1.5rem;line-height:2rem;font-weight:500;letter-spacing:-.01em}.post-content .prose p{margin-bottom:1.5rem;line-height:1.625;color:color-mix(in srgb,var(--foreground) 90%,transparent);font-size:1.125rem;line-height:1.75rem}.post-content .prose a{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent);color:hsl(var(--primary))}.post-content .prose a:hover{color:color-mix(in srgb,var(--primary) 80%,transparent);color:hsl(var(--primary) / .8)}.post-content .prose a{text-decoration-line:underline;text-underline-offset:2px;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;text-decoration-color:hsl(var(--primary) / .3)}.post-content .prose a:hover{text-decoration-color:hsl(var(--primary) / .6)}.post-content .prose strong{font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.post-content .prose em{font-style:italic;color:color-mix(in srgb,var(--foreground) 80%,transparent)}.post-content .prose blockquote{border-left-width:4px;border-color:color-mix(in srgb,var(--primary) 60%,transparent);background-color:color-mix(in srgb,var(--primary) 5%,transparent);margin-top:2rem;margin-bottom:2rem;border-top-right-radius:.5rem;border-bottom-right-radius:.5rem;padding-top:1rem;padding-bottom:1rem;padding-left:1.5rem;font-style:italic;color:color-mix(in srgb,var(--foreground) 80%,transparent)}.post-content .prose code{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);border-radius:.25rem;padding:.25rem .5rem;font-family:JetBrains Mono,SF Mono,Monaco,Cascadia Code,Roboto Mono,Source Code Pro,Fira Code,Consolas,Courier New,monospace;font-size:.875rem;line-height:1.25rem;border-width:1px;border-color:color-mix(in srgb,var(--border) 50%,transparent)}.post-content .prose pre{border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent);border-color:hsl(var(--border));border-radius:.75rem;padding:1.5rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}#newsletter .post-content .prose pre{animation:fade-in-up .6s ease-out forwards;opacity:0;transform:translateY(20px);animation:fadeInUp .8s ease-out forwards;animation-delay:.2s}.post-content .prose pre{overflow-x:auto}.post-content .prose pre code{border-style:none;background-color:transparent;padding:0;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.post-content .prose ul>:not([hidden])~:not([hidden]),.post-content .prose ol>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.post-content .prose ul,.post-content .prose ol,.post-content .prose li{color:color-mix(in srgb,var(--foreground) 90%,transparent)}.post-content .prose li::marker{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent);color:hsl(var(--primary))}.post-content .prose table{width:100%;border-collapse:collapse;overflow:hidden;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent);border-color:hsl(var(--border))}.post-content .prose th{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--muted) NaN%,transparent);font-weight:600;--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent);border-bottom-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);padding:.75rem;text-align:left;border-color:hsl(var(--border))}.post-content .prose td{border-bottom-width:1px;border-color:color-mix(in srgb,var(--border) 50%,transparent);padding:.75rem;color:color-mix(in srgb,var(--foreground) 90%,transparent)}.post-content .prose img{border-radius:.75rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}#newsletter .post-content .prose img{animation:fade-in-up .6s ease-out forwards;opacity:0;transform:translateY(20px);animation:fadeInUp .8s ease-out forwards;animation-delay:.2s}.post-content .prose img{margin-left:auto;margin-right:auto;margin-top:2rem;margin-bottom:2rem;border-width:1px;border-color:color-mix(in srgb,var(--border) 50%,transparent)}.post-content .prose hr{margin-top:3rem;margin-bottom:3rem;border-color:color-mix(in srgb,var(--border) 50%,transparent)}.post-navigation{margin-top:3rem;border-top-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);padding-top:2rem;border-color:hsl(var(--border));display:flex;align-items:center;justify-content:space-between}.post-navigation a{display:flex;align-items:center;gap:.5rem;border-radius:.5rem;padding:.5rem 1rem;border-width:1px;--tw-border-opacity: 1;border-color:color-mix(in srgb,var(--border) NaN%,transparent);--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent);border-color:hsl(var(--border));--tw-text-opacity: 1;color:color-mix(in srgb,var(--foreground) NaN%,transparent)}.post-navigation a:hover{--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent);color:hsl(var(--primary))}.post-navigation a{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.post-navigation a:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);border-color:color-mix(in srgb,var(--primary) 30%,transparent);background-color:color-mix(in srgb,var(--primary) 5%,transparent);border-color:hsl(var(--primary) / .3)}.post-tags{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.5rem}.post-tags .tag{border-color:color-mix(in srgb,var(--primary) 30%,transparent);background-color:color-mix(in srgb,var(--primary) 10%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary) NaN%,transparent);color:hsl(var(--primary));background-color:hsl(var(--primary) / .1);border-color:hsl(var(--primary) / .3)}.post-tags .tag:hover{--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent);--tw-text-opacity: 1;color:color-mix(in srgb,var(--primary-foreground) NaN%,transparent);background-color:hsl(var(--primary))}.reading-progress{position:fixed;top:0;left:0;z-index:50;height:.25rem;width:100%;background-color:color-mix(in srgb,var(--primary) 20%,transparent);background-color:hsl(var(--primary) / .2)}.reading-progress-bar{height:100%;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--primary) NaN%,transparent);background-color:hsl(var(--primary));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s;transition-timing-function:cubic-bezier(0,0,.2,1);width:0%}@media (max-width: 768px){.post-title{font-size:1.875rem;line-height:2.25rem}@media (min-width: 640px){.post-title{font-size:2.25rem;line-height:2.5rem}}.post-content .prose h1{font-size:1.875rem;line-height:2.25rem}.post-content .prose h2{font-size:1.5rem;line-height:2rem}.post-content .prose h3{font-size:1.25rem;line-height:1.75rem}.post-content .prose p{font-size:1rem;line-height:1.5rem}}.tag-cloud-circular{position:relative}.tag-cloud-item{position:absolute;--tw-translate-x: -50%;--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.tag-cloud-item:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.tag-popularity-bar{position:absolute;inset:0;background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-to: transparent var(--tw-gradient-to-position);--tw-gradient-from: hsl(var(--primary)) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.5s;opacity:.1}.tag-trending{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from: #f97316 var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: #ef4444 var(--tw-gradient-to-position);border-radius:.5rem;border-width:1px;border-color:#f9731633;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.tag-trending:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.tag-trending{opacity:.05}.tag-popular{position:relative;overflow:hidden;padding:.75rem;border-radius:.5rem;border-width:1px;--tw-bg-opacity: 1;background-color:color-mix(in srgb,var(--card) NaN%,transparent);cursor:pointer;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.tag-popular:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.w-10p{width:10%}.w-20p{width:20%}.w-30p{width:30%}.w-40p{width:40%}.w-50p{width:50%}.w-60p{width:60%}.w-70p{width:70%}.w-80p{width:80%}.w-90p{width:90%}.w-100p{width:100%}.particle-float{position:absolute;height:.25rem;width:.25rem;border-radius:9999px;background-color:color-mix(in srgb,var(--primary) 20%,transparent);background-color:hsl(var(--primary) / .2);animation:float 10s ease-in-out infinite}.particle-float-1{animation-delay:0s;left:20%}.particle-float-2{animation-delay:2s;left:50%}.particle-float-3{animation-delay:4s;left:80%}.particle-float-4{animation-delay:6s;left:35%}.particle-float-5{animation-delay:8s;left:65%}:root,html[data-theme=light]{--color-fill: 250, 250, 252;--color-text-base: 17, 24, 39;--color-accent: 37, 99, 235;--color-card: 255, 255, 255;--color-card-muted: 249, 250, 251;--color-border: 229, 231, 235;--background: oklch(.9818 .0054 95.0986);--foreground: oklch(.3438 .0269 95.7226);--card: oklch(.9818 .0054 95.0986);--card-foreground: oklch(.1908 .002 106.5859);--popover: oklch(1 0 0);--popover-foreground: oklch(.2671 .0196 98.939);--primary: oklch(.6171 .1375 39.0427);--primary-foreground: oklch(1 0 0);--secondary: oklch(.9245 .0138 92.9892);--secondary-foreground: oklch(.4334 .0177 98.6048);--muted: oklch(.9341 .0153 90.239);--muted-foreground: oklch(.6059 .0075 97.4233);--accent: oklch(.9245 .0138 92.9892);--accent-foreground: oklch(.2671 .0196 98.939);--destructive: oklch(.1908 .002 106.5859);--destructive-foreground: oklch(1 0 0);--border: oklch(.8847 .0069 97.3627);--input: oklch(.7621 .0156 98.3528);--ring: oklch(.6171 .1375 39.0427);--chart-1: oklch(.5583 .1276 42.9956);--chart-2: oklch(.6898 .1581 290.4107);--chart-3: oklch(.8816 .0276 93.128);--chart-4: oklch(.8822 .0403 298.1792);--chart-5: oklch(.5608 .1348 42.0584);--sidebar: oklch(.9663 .008 98.8792);--sidebar-foreground: oklch(.359 .0051 106.6524);--sidebar-primary: oklch(.6171 .1375 39.0427);--sidebar-primary-foreground: oklch(.9881 0 0);--sidebar-accent: oklch(.9245 .0138 92.9892);--sidebar-accent-foreground: oklch(.325 0 0);--sidebar-border: oklch(.9401 0 0);--sidebar-ring: oklch(.7731 0 0);--font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius: .5rem;--shadow-2xs: 0 1px 3px 0px hsl(0 0% 0% / .05);--shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / .05);--shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 1px 2px -1px hsl(0 0% 0% / .1);--shadow: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 1px 2px -1px hsl(0 0% 0% / .1);--shadow-md: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 2px 4px -1px hsl(0 0% 0% / .1);--shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 4px 6px -1px hsl(0 0% 0% / .1);--shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 8px 10px -1px hsl(0 0% 0% / .1);--shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / .25);--tracking-normal: 0em;--spacing: .25rem}html[data-theme=dark]{--color-fill: 17, 24, 39;--color-text-base: 243, 244, 246;--color-accent: 96, 165, 250;--color-card: 31, 41, 55;--color-card-muted: 55, 65, 81;--color-border: 75, 85, 99;--color-gradient-start: 96, 165, 250;--color-gradient-end: 59, 130, 246;--color-secondary: 156, 163, 175;--color-success: 52, 211, 153;--color-warning: 252, 211, 77;--color-glow: 96, 165, 250;--color-shadow: 0, 0, 0;--background: oklch(.2679 .0036 106.6427);--foreground: oklch(.8074 .0142 93.0137);--card: oklch(.2679 .0036 106.6427);--card-foreground: oklch(.9818 .0054 95.0986);--popover: oklch(.3085 .0035 106.6039);--popover-foreground: oklch(.9211 .004 106.4781);--primary: oklch(.6724 .1308 38.7559);--primary-foreground: oklch(1 0 0);--secondary: oklch(.9818 .0054 95.0986);--secondary-foreground: oklch(.3085 .0035 106.6039);--muted: oklch(.2213 .0038 106.707);--muted-foreground: oklch(.7713 .0169 99.0657);--accent: oklch(.213 .0078 95.4245);--accent-foreground: oklch(.9663 .008 98.8792);--destructive: oklch(.6368 .2078 25.3313);--destructive-foreground: oklch(1 0 0);--border: oklch(.3618 .0101 106.8928);--input: oklch(.4336 .0113 100.2195);--ring: oklch(.6724 .1308 38.7559);--chart-1: oklch(.5583 .1276 42.9956);--chart-2: oklch(.6898 .1581 290.4107);--chart-3: oklch(.213 .0078 95.4245);--chart-4: oklch(.3074 .0516 289.323);--chart-5: oklch(.5608 .1348 42.0584);--sidebar: oklch(.2357 .0024 67.7077);--sidebar-foreground: oklch(.8074 .0142 93.0137);--sidebar-primary: oklch(.325 0 0);--sidebar-primary-foreground: oklch(.9881 0 0);--sidebar-accent: oklch(.168 .002 106.6177);--sidebar-accent-foreground: oklch(.8074 .0142 93.0137);--sidebar-border: oklch(.9401 0 0);--sidebar-ring: oklch(.7731 0 0);--font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius: .5rem;--shadow-2xs: 0 1px 3px 0px hsl(0 0% 0% / .05);--shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / .05);--shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 1px 2px -1px hsl(0 0% 0% / .1);--shadow: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 1px 2px -1px hsl(0 0% 0% / .1);--shadow-md: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 2px 4px -1px hsl(0 0% 0% / .1);--shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 4px 6px -1px hsl(0 0% 0% / .1);--shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / .1), 0 8px 10px -1px hsl(0 0% 0% / .1);--shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / .25)}:where(.astro-sckkx6r4){box-sizing:border-box}html{scroll-behavior:smooth;overflow-y:scroll}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background-color:var(--background);color:var(--foreground);font-family:var(--font-sans);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main:where(.astro-sckkx6r4){flex:1}section:where(.astro-sckkx6r4),footer:where(.astro-sckkx6r4){margin-left:auto;margin-right:auto;width:100%;max-width:100%;padding-left:0;padding-right:0}@media (min-width: 640px){body{font-size:17px}section:where(.astro-sckkx6r4),footer:where(.astro-sckkx6r4){padding-left:0;padding-right:0}}@media (min-width: 768px){section:where(.astro-sckkx6r4),footer:where(.astro-sckkx6r4){padding-left:0;padding-right:0}}h1:where(.astro-sckkx6r4),h2:where(.astro-sckkx6r4),h3:where(.astro-sckkx6r4){margin:0;font-weight:600;line-height:1.2}a:where(.astro-sckkx6r4){color:var(--primary);text-decoration:none;transition:color .2s}.animate-on-scroll:where(.astro-sckkx6r4),.animate-fade-up:where(.astro-sckkx6r4),.animate-fade-in:where(.astro-sckkx6r4),.animate-slide-in:where(.astro-sckkx6r4),.animate-scale-in:where(.astro-sckkx6r4){opacity:0}img:where(.astro-sckkx6r4){max-width:100%;height:auto;display:block}.video-container:where(.astro-sckkx6r4){position:relative;max-width:48rem;margin:0 auto}.video-container:where(.astro-sckkx6r4) video:where(.astro-sckkx6r4){width:100%;border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a}.text-center:where(.astro-sckkx6r4){text-align:center}.mx-auto:where(.astro-sckkx6r4){margin-left:auto;margin-right:auto}.hidden:where(.astro-sckkx6r4){display:none}.bg-background:where(.astro-sckkx6r4){background-color:var(--background)}.text-foreground:where(.astro-sckkx6r4){color:var(--foreground)}.text-primary:where(.astro-sckkx6r4){color:var(--primary)}.grid:where(.astro-sckkx6r4){display:grid;gap:1.5rem}@media (min-width: 640px){.sm\\:where(.astro-sckkx6r4):grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
