@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@300;400;500;600;700&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:"Montserrat", ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--spacing:.25rem;--container-md:28rem;--container-xl:36rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-light:300;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-md:calc(var(--radius) - 2px);--radius-lg:var(--radius);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0, 0, .2, 1) infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--blur-md:12px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:hsl(var(--background));--color-foreground:hsl(var(--foreground));--color-card:hsl(var(--card));--color-card-foreground:hsl(var(--card-foreground));--color-popover:hsl(var(--popover));--color-popover-foreground:hsl(var(--popover-foreground));--color-primary:hsl(var(--primary));--color-primary-foreground:hsl(var(--primary-foreground));--color-secondary:hsl(var(--secondary));--color-secondary-foreground:hsl(var(--secondary-foreground));--color-muted-foreground:hsl(var(--muted-foreground));--color-destructive:hsl(var(--destructive));--color-border:hsl(var(--border));--color-input:hsl(var(--input));--color-ring:hsl(var(--ring))}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:root{--background:0 0% 100%;--foreground:240 10% 3.9%;--card:0 0% 100%;--card-foreground:240 10% 3.9%;--popover:0 0% 100%;--popover-foreground:240 10% 3.9%;--primary:0 72.2% 50.6%;--primary-foreground:0 85.7% 97.3%;--secondary:240 4.8% 95.9%;--secondary-foreground:240 5.9% 10%;--muted:240 4.8% 95.9%;--muted-foreground:240 3.8% 46.1%;--accent:240 4.8% 95.9%;--accent-foreground:240 5.9% 10%;--destructive:0 84.2% 60.2%;--destructive-foreground:0 0% 98%;--border:240 5.9% 90%;--input:240 5.9% 90%;--ring:0 72.2% 50.6%;--radius:.5rem;--letter-spacing:.01em;--shadow:0px 6px 16px -2px #00000014}.dark{--background:240 10% 3.9%;--foreground:0 0% 98%;--card:240 10% 3.9%;--card-foreground:0 0% 98%;--popover:240 10% 3.9%;--popover-foreground:0 0% 98%;--primary:0 72.2% 50.6%;--primary-foreground:0 85.7% 97.3%;--secondary:240 3.7% 15.9%;--secondary-foreground:0 0% 98%;--muted:240 3.7% 15.9%;--muted-foreground:240 5% 64.9%;--accent:240 3.7% 15.9%;--accent-foreground:0 0% 98%;--destructive:0 62.8% 30.6%;--destructive-foreground:0 0% 98%;--border:240 3.7% 15.9%;--input:240 3.7% 15.9%;--ring:0 72.2% 50.6%}*{border-color:hsl(var(--border));box-sizing:border-box}html{scroll-behavior:smooth}body{background-color:hsl(var(--background));color:hsl(var(--foreground));font-family:var(--font-sans);letter-spacing:var(--letter-spacing);-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);line-height:1.1}}@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.-top-10{top:calc(var(--spacing) * -10)}.-top-32{top:calc(var(--spacing) * -32)}.-top-40{top:calc(var(--spacing) * -40)}.top-0{top:calc(var(--spacing) * 0)}.-right-32{right:calc(var(--spacing) * -32)}.-right-40{right:calc(var(--spacing) * -40)}.-right-\[3vw\]{right:-3vw}.right-0{right:calc(var(--spacing) * 0)}.-bottom-1{bottom:calc(var(--spacing) * -1)}.-bottom-32{bottom:calc(var(--spacing) * -32)}.-bottom-\[6vh\]{bottom:-6vh}.bottom-0{bottom:calc(var(--spacing) * 0)}.-left-32{left:calc(var(--spacing) * -32)}.-left-40{left:calc(var(--spacing) * -40)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-\[100\]{z-index:100}.z-\[200\]{z-index:200}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.mb-20{margin-bottom:calc(var(--spacing) * 20)}.ml-1{margin-left:calc(var(--spacing) * 1)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.aspect-\[16\/10\]{aspect-ratio:16/10}.h-1{height:calc(var(--spacing) * 1)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-7{height:calc(var(--spacing) * 7)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-16{height:calc(var(--spacing) * 16)}.h-\[24rem\]{height:24rem}.h-\[28rem\]{height:28rem}.h-\[36rem\]{height:36rem}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-\[40vh\]{max-height:40vh}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-\[24rem\]{width:24rem}.w-\[28rem\]{width:28rem}.w-\[36rem\]{width:36rem}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.w-screen{width:100vw}.max-w-6xl{max-width:var(--container-6xl)}.max-w-md{max-width:var(--container-md)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.origin-left{transform-origin:0}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-x-0{--tw-scale-x:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-ping{animation:var(--animate-ping)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-32>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 32) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 32) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-border{border-color:var(--color-border)}.border-destructive\/30{border-color:color-mix(in srgb,hsl(var(--destructive)) 30%,transparent)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/30{border-color:color-mix(in oklab,var(--color-destructive) 30%,transparent)}}.border-input{border-color:var(--color-input)}.border-transparent{border-color:#0000}.bg-background{background-color:var(--color-background)}.bg-background\/70{background-color:color-mix(in srgb,hsl(var(--background)) 70%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background\/70{background-color:color-mix(in oklab,var(--color-background) 70%,transparent)}}.bg-background\/75{background-color:color-mix(in srgb,hsl(var(--background)) 75%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background\/75{background-color:color-mix(in oklab,var(--color-background) 75%,transparent)}}.bg-background\/95{background-color:color-mix(in srgb,hsl(var(--background)) 95%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-background\/95{background-color:color-mix(in oklab,var(--color-background) 95%,transparent)}}.bg-border{background-color:var(--color-border)}.bg-border\/40{background-color:color-mix(in srgb,hsl(var(--border)) 40%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-border\/40{background-color:color-mix(in oklab,var(--color-border) 40%,transparent)}}.bg-card{background-color:var(--color-card)}.bg-card\/50{background-color:color-mix(in srgb,hsl(var(--card)) 50%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-card\/50{background-color:color-mix(in oklab,var(--color-card) 50%,transparent)}}.bg-card\/85{background-color:color-mix(in srgb,hsl(var(--card)) 85%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-card\/85{background-color:color-mix(in oklab,var(--color-card) 85%,transparent)}}.bg-destructive\/10{background-color:color-mix(in srgb,hsl(var(--destructive)) 10%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--color-destructive) 10%,transparent)}}.bg-foreground\/70{background-color:color-mix(in srgb,hsl(var(--foreground)) 70%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-foreground\/70{background-color:color-mix(in oklab,var(--color-foreground) 70%,transparent)}}.bg-popover{background-color:var(--color-popover)}.bg-primary{background-color:var(--color-primary)}.bg-primary\/10{background-color:color-mix(in srgb,hsl(var(--primary)) 10%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--color-primary) 10%,transparent)}}.bg-primary\/\[0\.04\]{background-color:color-mix(in srgb,hsl(var(--primary)) 4%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/\[0\.04\]{background-color:color-mix(in oklab,var(--color-primary) 4%,transparent)}}.bg-secondary{background-color:var(--color-secondary)}.bg-secondary\/50{background-color:color-mix(in srgb,hsl(var(--secondary)) 50%,transparent)}@supports (color:color-mix(in lab,red,red)){.bg-secondary\/50{background-color:color-mix(in oklab,var(--color-secondary) 50%,transparent)}}.bg-transparent{background-color:#0000}.\[mask-image\:linear-gradient\(to_right\,transparent\,black_8\%\,black_92\%\,transparent\)\]{-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.object-cover{object-fit:cover}.p-1{padding:calc(var(--spacing) * 1)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-20{padding-top:calc(var(--spacing) * 20)}.pt-24{padding-top:calc(var(--spacing) * 24)}.pt-28{padding-top:calc(var(--spacing) * 28)}.pt-\[15vh\]{padding-top:15vh}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-12{padding-bottom:calc(var(--spacing) * 12)}.pb-16{padding-bottom:calc(var(--spacing) * 16)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-\[28vh\]{font-size:28vh}.text-\[clamp\(2\.5rem\,7vw\,5rem\)\]{font-size:clamp(2.5rem,7vw,5rem)}.text-\[clamp\(3rem\,12vw\,7rem\)\]{font-size:clamp(3rem,12vw,7rem)}.text-\[clamp\(8rem\,18vw\,16rem\)\]{font-size:clamp(8rem,18vw,16rem)}.leading-\[0\.8\]{--tw-leading:.8;line-height:.8}.leading-\[0\.95\]{--tw-leading:.95;line-height:.95}.leading-\[1\.05\]{--tw-leading:1.05;line-height:1.05}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.02em\]{--tw-tracking:-.02em;letter-spacing:-.02em}.tracking-\[-0\.03em\]{--tw-tracking:-.03em;letter-spacing:-.03em}.tracking-\[-0\.06em\]{--tw-tracking:-.06em;letter-spacing:-.06em}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-\[0\.25em\]{--tw-tracking:.25em;letter-spacing:.25em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-nowrap{white-space:nowrap}.text-card-foreground{color:var(--color-card-foreground)}.text-destructive{color:var(--color-destructive)}.text-foreground{color:var(--color-foreground)}.text-muted-foreground{color:var(--color-muted-foreground)}.text-popover-foreground{color:var(--color-popover-foreground)}.text-primary{color:var(--color-primary)}.text-primary-foreground{color:var(--color-primary-foreground)}.text-secondary-foreground{color:var(--color-secondary-foreground)}.text-transparent{color:#0000}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.opacity-0{opacity:0}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-75{opacity:.75}.opacity-\[0\.04\]{opacity:.04}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow\)\]{--tw-shadow:var(--shadow);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-4{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-background{--tw-ring-color:var(--color-background)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur-3xl{--tw-blur:blur(var(--blur-3xl));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{--tw-backdrop-blur:blur(8px);-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(var(--blur-md));-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(var(--blur-sm));-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,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-500{--tw-duration:.5s;transition-duration:.5s}.will-change-transform{will-change:transform}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.group-hover\:translate-x-0\.5:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:-translate-y-0\.5:is(:where(.group):hover *){--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:translate-y-0\.5:is(:where(.group):hover *){--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:bg-primary:is(:where(.group):hover *){background-color:var(--color-primary)}.group-hover\:text-foreground:is(:where(.group):hover *){color:var(--color-foreground)}.group-hover\:text-primary:is(:where(.group):hover *){color:var(--color-primary)}.group-hover\:text-primary-foreground:is(:where(.group):hover *){color:var(--color-primary-foreground)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/cta\:translate-x-1:is(:where(.group\/cta):hover *){--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/cta\:-translate-y-1:is(:where(.group\/cta):hover *){--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/cta\:scale-x-100:is(:where(.group\/cta):hover *),.group-hover\/repo\:scale-x-100:is(:where(.group\/repo):hover *){--tw-scale-x:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.placeholder\:text-muted-foreground\/60::placeholder{color:color-mix(in srgb,hsl(var(--muted-foreground)) 60%,transparent)}@supports (color:color-mix(in lab,red,red)){.placeholder\:text-muted-foreground\/60::placeholder{color:color-mix(in oklab,var(--color-muted-foreground) 60%,transparent)}}@media(hover:hover){.hover\:border-primary:hover{border-color:var(--color-primary)}.hover\:border-primary\/40:hover{border-color:color-mix(in srgb,hsl(var(--primary)) 40%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-primary\/40:hover{border-color:color-mix(in oklab,var(--color-primary) 40%,transparent)}}.hover\:border-primary\/50:hover{border-color:color-mix(in srgb,hsl(var(--primary)) 50%,transparent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-primary\/50:hover{border-color:color-mix(in oklab,var(--color-primary) 50%,transparent)}}.hover\:bg-card:hover{background-color:var(--color-card)}.hover\:bg-secondary:hover{background-color:var(--color-secondary)}.hover\:text-foreground:hover{color:var(--color-foreground)}.hover\:text-primary:hover{color:var(--color-primary)}.hover\:opacity-90:hover{opacity:.9}}.focus\:border-transparent:focus{border-color:#0000}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--color-ring)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:40rem){.sm\:mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.sm\:mt-6{margin-top:calc(var(--spacing) * 6)}.sm\:mb-4{margin-bottom:calc(var(--spacing) * 4)}.sm\:mb-5{margin-bottom:calc(var(--spacing) * 5)}.sm\:inline-flex{display:inline-flex}.sm\:w-12{width:calc(var(--spacing) * 12)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:items-baseline{align-items:baseline}.sm\:justify-between{justify-content:space-between}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:gap-3{gap:calc(var(--spacing) * 3)}:where(.sm\:space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.sm\:p-5{padding:calc(var(--spacing) * 5)}.sm\:px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.sm\:px-10{padding-inline:calc(var(--spacing) * 10)}.sm\:py-1{padding-block:calc(var(--spacing) * 1)}.sm\:pt-5{padding-top:calc(var(--spacing) * 5)}.sm\:pt-24{padding-top:calc(var(--spacing) * 24)}.sm\:pb-5{padding-bottom:calc(var(--spacing) * 5)}.sm\:pb-6{padding-bottom:calc(var(--spacing) * 6)}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.sm\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.sm\:text-\[10px\]{font-size:10px}.sm\:text-\[36vh\]{font-size:36vh}}@media(min-width:48rem){.md\:col-span-4{grid-column:span 4/span 4}.md\:col-span-5{grid-column:span 5/span 5}.md\:col-span-7{grid-column:span 7/span 7}.md\:col-span-8{grid-column:span 8/span 8}.md\:col-start-8{grid-column-start:8}.md\:mt-2{margin-top:calc(var(--spacing) * 2)}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:inline-flex{display:inline-flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:flex-col{flex-direction:column}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:gap-1\.5{gap:calc(var(--spacing) * 1.5)}.md\:gap-4{gap:calc(var(--spacing) * 4)}.md\:gap-12{gap:calc(var(--spacing) * 12)}.md\:gap-14{gap:calc(var(--spacing) * 14)}.md\:gap-16{gap:calc(var(--spacing) * 16)}:where(.md\:space-y-40>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 40) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 40) * calc(1 - var(--tw-space-y-reverse)))}.md\:p-8{padding:calc(var(--spacing) * 8)}.md\:px-24{padding-inline:calc(var(--spacing) * 24)}.md\:py-28{padding-block:calc(var(--spacing) * 28)}.md\:pt-24{padding-top:calc(var(--spacing) * 24)}.md\:pb-16{padding-bottom:calc(var(--spacing) * 16)}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.md\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.md\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-\[55vh\]{font-size:55vh}}@media(min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:48rem){.md\:\[\&\>a\]\:order-2>a{order:2}}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:hsl(var(--background))}::-webkit-scrollbar-thumb{background:hsl(var(--muted));border-radius:99px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground) / .5)}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){z-index:9999}::view-transition-old(root){z-index:1}body:after{content:"";pointer-events:none;z-index:9999;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-size:180px 180px;position:fixed;inset:0}@media(prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}::view-transition-old(root){transition:none!important;animation:none!important}::view-transition-new(root){transition:none!important;animation:none!important}}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marquee-scroll-reverse{0%{transform:translate(-50%)}to{transform:translate(0)}}.marquee-track{animation:30s linear infinite marquee-scroll}.marquee-track-reverse{animation:30s linear infinite marquee-scroll-reverse}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}:root{--games-bg: #0a0a0a;--games-card-bg: #111111;--games-card-border: rgba(255, 255, 255, .08);--games-card-border-hover: rgba(255, 255, 255, .16);--games-card-shadow: rgba(0, 0, 0, .5);--games-card-radius: 16px;--games-card-padding: 32px;--games-accent: #e11d48;--games-text-primary: #efefef;--games-text-secondary: rgba(255, 255, 255, .45);--games-text-footer: rgba(255, 255, 255, .2);--games-preview-bg: rgba(255, 255, 255, .04);--games-preview-border: rgba(255, 255, 255, .05);--games-preview-radius: 10px;--games-btn-bg: #e11d48;--games-btn-hover: #be123c;--games-snake-color: #4ade80;--games-snake-head: #86efac;--games-food-color: #f87171;--games-invader-color: #a78bfa;--games-laser-color: #fbbf24;--games-ship-color: #38bdf8}[data-theme=light]{--games-bg: #fafafa;--games-card-bg: #ffffff;--games-card-border: rgba(0, 0, 0, .08);--games-card-border-hover: rgba(0, 0, 0, .16);--games-card-shadow: rgba(0, 0, 0, .12);--games-text-primary: #18181b;--games-text-secondary: rgba(0, 0, 0, .45);--games-text-footer: rgba(0, 0, 0, .25);--games-preview-bg: rgba(0, 0, 0, .03);--games-preview-border: rgba(0, 0, 0, .06)}.games-page{min-height:100dvh;background:var(--games-bg);color:var(--games-text-primary);display:flex;flex-direction:column;font-family:inherit}.games-header{display:flex;align-items:center;justify-content:space-between;padding:24px 40px 0}.games-back-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--games-text-secondary);font-size:.8125rem;letter-spacing:.02em;cursor:pointer;padding:6px 0;transition:color .2s ease;text-decoration:none;white-space:nowrap}.games-back-btn:hover{color:var(--games-text-primary)}.games-title-block{text-align:center;flex:1}.games-title-row{display:inline-flex;align-items:center;gap:10px}.games-title-icon{color:var(--games-accent)}.games-title{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;letter-spacing:.18em;margin:0;color:var(--games-text-primary);line-height:1}.games-subtitle{margin:6px 0 0;font-size:.8125rem;letter-spacing:.06em;color:var(--games-text-secondary);text-transform:uppercase}.games-header-spacer{min-width:120px}.games-main{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 40px}.games-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;width:100%;max-width:880px}.game-card{background:var(--games-card-bg);border:1px solid var(--games-card-border);border-radius:var(--games-card-radius);padding:var(--games-card-padding);cursor:default;transition:border-color .25s ease,box-shadow .25s ease,transform .2s ease;transform-style:preserve-3d}.game-card:hover{border-color:var(--games-card-border-hover);box-shadow:0 16px 48px var(--games-card-shadow);transform:perspective(800px) rotateY(-2deg) rotateX(1deg)}.game-card:nth-child(2):hover{transform:perspective(800px) rotateY(2deg) rotateX(1deg)}.game-card-inner{display:flex;flex-direction:column;gap:24px;height:100%}.game-card-content{flex:1}.game-card-title{font-size:1.375rem;font-weight:700;letter-spacing:.04em;margin:0 0 8px;color:var(--games-text-primary)}.game-card-desc{margin:0;font-size:.875rem;color:var(--games-text-secondary);line-height:1.55}.game-card-btn{display:block;width:100%;padding:13px 0;background:var(--games-btn-bg);color:#fff;border:none;border-radius:8px;font-size:.8125rem;font-weight:700;letter-spacing:.14em;cursor:pointer;transition:background .18s ease,transform .12s ease,box-shadow .18s ease}.game-card-btn:hover{background:var(--games-btn-hover);box-shadow:0 4px 18px #e11d4859;transform:translateY(-1px)}.game-card-btn:active{transform:translateY(0);box-shadow:none}.game-preview{background:var(--games-preview-bg);border-radius:var(--games-preview-radius);height:160px;position:relative;overflow:hidden;border:1px solid var(--games-preview-border)}.snake-preview{display:flex;align-items:center;justify-content:center}.snake-grid{position:relative;width:120px;height:120px}.snake-dot{position:absolute;width:14px;height:14px;border-radius:3px}.snake-head{background:var(--games-snake-head);box-shadow:0 0 8px var(--games-snake-head);animation:snakeHeadMove 2.8s steps(1) infinite}.snake-body{background:var(--games-snake-color);opacity:.85}.snake-body-1{animation:snakeBody1 2.8s steps(1) infinite}.snake-body-2{animation:snakeBody2 2.8s steps(1) infinite}.snake-body-3{animation:snakeBody3 2.8s steps(1) infinite}.snake-food{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--games-food-color);box-shadow:0 0 8px var(--games-food-color);animation:snakeFoodPos 2.8s steps(1) infinite,snakeFoodPulse .8s ease-in-out infinite alternate}@keyframes snakeHeadMove{0%{top:52px;left:52px}14%{top:52px;left:68px}28%{top:52px;left:84px}42%{top:68px;left:84px}57%{top:68px;left:68px}71%{top:68px;left:52px}85%{top:52px;left:52px}to{top:52px;left:52px}}@keyframes snakeBody1{0%{top:52px;left:36px}14%{top:52px;left:52px}28%{top:52px;left:68px}42%{top:52px;left:84px}57%{top:68px;left:84px}71%{top:68px;left:68px}85%{top:68px;left:52px}to{top:52px;left:52px}}@keyframes snakeBody2{0%{top:52px;left:20px}14%{top:52px;left:36px}28%{top:52px;left:52px}42%{top:52px;left:68px}57%{top:52px;left:84px}71%{top:68px;left:84px}85%{top:68px;left:68px}to{top:68px;left:52px}}@keyframes snakeBody3{0%{top:36px;left:20px}14%{top:52px;left:20px}28%{top:52px;left:36px}42%{top:52px;left:52px}57%{top:52px;left:68px}71%{top:52px;left:84px}85%{top:68px;left:84px}to{top:68px;left:68px}}@keyframes snakeFoodPos{0%{top:20px;left:84px}42%{top:20px;left:84px}43%{top:20px;left:20px}to{top:20px;left:20px}}@keyframes snakeFoodPulse{0%{transform:scale(1);opacity:.9}to{transform:scale(1.25);opacity:1}}.shooter-preview{display:flex;align-items:flex-end;justify-content:center;padding-bottom:18px}.shooter-scene{position:relative;width:160px;height:120px}.invader{position:absolute;width:16px;height:12px;background:var(--games-invader-color);clip-path:polygon(20% 0%,80% 0%,100% 40%,80% 60%,100% 100%,0% 100%,20% 60%,0% 40%);top:16px;animation:invaderDrift 1.6s ease-in-out infinite alternate,invaderFlicker .4s steps(1) infinite}.invader-1{left:16px;animation-delay:0s,0s}.invader-2{left:48px;animation-delay:.08s,.1s}.invader-3{left:80px;animation-delay:.16s,.2s}.invader-4{left:112px;animation-delay:.24s,.3s}@keyframes invaderDrift{0%{transform:translate(0)}to{transform:translate(10px)}}@keyframes invaderFlicker{0%{opacity:1}50%{opacity:.7}}.laser{position:absolute;width:2px;height:18px;background:var(--games-laser-color);box-shadow:0 0 6px var(--games-laser-color);left:79px;bottom:28px;animation:laserFire 1.2s ease-in infinite}@keyframes laserFire{0%{bottom:28px;opacity:1;height:18px}60%{bottom:80px;opacity:1;height:18px}75%{bottom:90px;opacity:0;height:4px}76%{bottom:28px;opacity:0;height:18px}85%{bottom:28px;opacity:1}to{bottom:28px;opacity:1}}.player-ship{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0;height:0;border-left:14px solid transparent;border-right:14px solid transparent;border-bottom:28px solid var(--games-ship-color);filter:drop-shadow(0 0 6px var(--games-ship-color));animation:playerBob 1.8s ease-in-out infinite alternate}@keyframes playerBob{0%{transform:translate(-50%) translateY(0)}to{transform:translate(-50%) translateY(-4px)}}.games-footer{text-align:center;padding:16px 40px 28px;font-size:.75rem;letter-spacing:.06em;color:var(--games-text-footer);text-transform:uppercase}@media(max-width:680px){.games-header{padding:18px 20px 0;flex-wrap:wrap;gap:12px}.games-header-spacer{display:none}.games-title-block{order:-1;flex:1 0 100%}.games-main{padding:32px 20px 40px}.games-grid{grid-template-columns:1fr;max-width:420px}.game-card:hover,.game-card:nth-child(2):hover{transform:perspective(800px) rotateY(0) rotateX(0)}}:root{--sg-bg: #050505;--sg-header-bg: rgba(5, 5, 5, .9);--sg-border-subtle: rgba(255, 255, 255, .06);--sg-border-btn: rgba(255, 255, 255, .12);--sg-border-btn-hover: rgba(255, 255, 255, .3);--sg-btn-hover-bg: rgba(255, 255, 255, .05);--sg-btn-active-bg: rgba(255, 255, 255, .08);--sg-text-primary: #ffffff;--sg-text-secondary: rgba(255, 255, 255, .6);--sg-text-label: rgba(255, 255, 255, .35);--sg-text-hint: rgba(255, 255, 255, .55);--sg-text-controls: rgba(255, 255, 255, .28);--sg-text-score: rgba(255, 255, 255, .6);--sg-overlay-bg: rgba(5, 5, 5, .72);--sg-canvas-border: rgba(255, 255, 255, .08)}[data-theme=light]{--sg-bg: #f8f8f8;--sg-header-bg: rgba(248, 248, 248, .92);--sg-border-subtle: rgba(0, 0, 0, .07);--sg-border-btn: rgba(0, 0, 0, .12);--sg-border-btn-hover: rgba(0, 0, 0, .28);--sg-btn-hover-bg: rgba(0, 0, 0, .04);--sg-btn-active-bg: rgba(0, 0, 0, .07);--sg-text-primary: #18181b;--sg-text-secondary: rgba(0, 0, 0, .55);--sg-text-label: rgba(0, 0, 0, .35);--sg-text-hint: rgba(0, 0, 0, .5);--sg-text-controls: rgba(0, 0, 0, .3);--sg-text-score: rgba(0, 0, 0, .55);--sg-overlay-bg: rgba(248, 248, 248, .78);--sg-canvas-border: rgba(0, 0, 0, .1)}.snake-page{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:100vh;background-color:var(--sg-bg);position:relative;box-sizing:border-box;padding:60px 16px 16px}.snake-header{position:absolute;top:0;left:0;right:0;height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--sg-header-bg);border-bottom:1px solid var(--sg-border-subtle);z-index:10}.snake-score{display:flex;flex-direction:column;align-items:flex-start;gap:1px}.snake-score-label{font-family:monospace;font-size:10px;letter-spacing:.12em;color:var(--sg-text-label);text-transform:uppercase}.snake-score-value{font-family:monospace;font-size:22px;font-weight:700;color:#e11d48;line-height:1;min-width:3ch}.snake-back-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--sg-border-btn);border-radius:6px;color:var(--sg-text-secondary);font-size:13px;font-family:inherit;padding:6px 12px;cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease;letter-spacing:.02em}.snake-back-btn:hover{color:var(--sg-text-primary);border-color:var(--sg-border-btn-hover);background:var(--sg-btn-hover-bg)}.snake-back-btn:active{background:var(--sg-btn-active-bg)}.snake-canvas-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.snake-canvas{display:block;border:1px solid var(--sg-canvas-border);border-radius:4px;max-width:500px;max-height:500px;touch-action:none;-webkit-user-select:none;user-select:none}.snake-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:var(--sg-overlay-bg);border-radius:4px;pointer-events:none;animation:snake-overlay-fade-in .2s ease forwards}.snake-overlay button,.snake-overlay a{pointer-events:all}@keyframes snake-overlay-fade-in{0%{opacity:0}to{opacity:1}}.snake-overlay-title{font-family:monospace;font-size:clamp(28px,8vw,42px);font-weight:700;letter-spacing:.18em;color:var(--sg-text-primary);margin:0;text-transform:uppercase}.snake-overlay-title--dead{color:#e11d48;text-shadow:0 0 24px rgba(225,29,72,.45)}.snake-overlay-hint{font-family:monospace;font-size:14px;color:var(--sg-text-hint);margin:4px 0 0;letter-spacing:.04em}.snake-overlay-controls{font-family:monospace;font-size:11px;color:var(--sg-text-controls);margin:0;letter-spacing:.04em}.snake-overlay-final-score{font-family:monospace;font-size:16px;color:var(--sg-text-score);margin:2px 0 6px;letter-spacing:.06em}.snake-overlay-score-num{font-family:monospace;color:#e11d48;font-size:20px;font-weight:700}.snake-restart-btn{display:flex;align-items:center;gap:8px;background:#e11d48;border:none;border-radius:6px;color:#fff;font-size:14px;font-family:monospace;font-weight:600;letter-spacing:.06em;padding:10px 22px;cursor:pointer;margin-top:4px;transition:background .15s ease,transform .1s ease,box-shadow .15s ease;box-shadow:0 0 #e11d4800}.snake-restart-btn:hover{background:#f43f5e;box-shadow:0 0 20px #e11d4866;transform:translateY(-1px)}.snake-restart-btn:active{background:#be123c;transform:translateY(0);box-shadow:none}@media(max-width:480px){.snake-page{padding-top:56px}.snake-overlay-hint{font-size:12px}.snake-overlay-controls{font-size:10px}}:root{--sh-bg: #020209;--sh-text-primary: #ffffff;--sh-text-secondary: rgba(255, 255, 255, .7);--sh-text-label: rgba(255, 255, 255, .4);--sh-text-hint: rgba(255, 255, 255, .45);--sh-text-controls: rgba(255, 255, 255, .5);--sh-border-btn: rgba(255, 255, 255, .15);--sh-canvas-border: rgba(255, 255, 255, .08);--sh-overlay-bg: rgba(2, 2, 9, .82);--sh-key-bg: rgba(255, 255, 255, .08);--sh-key-border: rgba(255, 255, 255, .2);--sh-key-color: rgba(255, 255, 255, .8);--sh-life-lost: #333333}[data-theme=light]{--sh-bg: #f8f8f8;--sh-text-primary: #18181b;--sh-text-secondary: rgba(0, 0, 0, .65);--sh-text-label: rgba(0, 0, 0, .4);--sh-text-hint: rgba(0, 0, 0, .45);--sh-text-controls: rgba(0, 0, 0, .5);--sh-border-btn: rgba(0, 0, 0, .15);--sh-canvas-border: rgba(0, 0, 0, .1);--sh-overlay-bg: rgba(248, 248, 248, .88);--sh-key-bg: rgba(0, 0, 0, .06);--sh-key-border: rgba(0, 0, 0, .18);--sh-key-color: rgba(0, 0, 0, .75);--sh-life-lost: #cccccc}.shooting-page{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:100vh;background:var(--sh-bg);padding:16px;box-sizing:border-box;font-family:Courier New,Courier,monospace}.shooting-header{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:480px;margin-bottom:12px;padding:0 4px}.shooting-back-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--sh-border-btn);color:var(--sh-text-secondary);font-size:13px;font-family:inherit;padding:6px 12px;border-radius:6px;cursor:pointer;transition:color .2s,border-color .2s}.shooting-back-btn:hover{color:#e11d48;border-color:#e11d4880}.shooting-score-display{display:flex;flex-direction:column;align-items:center;gap:2px}.shooting-score-label{font-size:10px;letter-spacing:.15em;color:var(--sh-text-label);text-transform:uppercase}.shooting-score-value{font-size:22px;font-weight:700;color:#e11d48;letter-spacing:.05em;min-width:60px;text-align:center}.shooting-lives-display{display:flex;gap:6px;align-items:center}.shooting-life-icon{font-size:18px;transition:color .2s,opacity .2s}.shooting-life-icon.active{color:var(--sh-text-primary);opacity:1}.shooting-life-icon.lost{color:var(--sh-life-lost);opacity:.3}.shooting-canvas-wrap{position:relative;width:480px;max-width:100%;flex-shrink:0}.shooting-canvas{display:block;width:480px;height:640px;max-width:100%;border:1px solid var(--sh-canvas-border);border-radius:4px;box-shadow:0 0 0 1px #e11d4814,0 0 40px #e11d480d,0 8px 32px #0000004d;background:var(--sh-bg)}.shooting-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:var(--sh-overlay-bg);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:4px}.shooting-overlay-title{font-size:42px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--sh-text-primary);text-shadow:none}.shooting-overlay-title.game-over{color:#e11d48;text-shadow:0 0 20px rgba(225,29,72,.6),0 0 60px rgba(225,29,72,.2)}.shooting-overlay-title.you-win{color:#4f8;text-shadow:0 0 20px rgba(68,255,136,.6),0 0 60px rgba(68,255,136,.2)}.shooting-overlay-sub{font-size:13px;color:var(--sh-text-hint);letter-spacing:.08em;text-transform:uppercase}.shooting-overlay-score{font-size:26px;color:var(--sh-text-secondary);letter-spacing:.05em}.shooting-overlay-controls{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--sh-text-controls);letter-spacing:.04em;align-items:center}.key{display:inline-block;background:var(--sh-key-bg);border:1px solid var(--sh-key-border);color:var(--sh-key-color);padding:2px 8px;border-radius:4px;font-size:12px;font-family:inherit;margin-right:6px}.shooting-start-btn{display:flex;align-items:center;justify-content:center;background:#e11d48;color:#fff;font-family:inherit;font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border:none;border-radius:6px;padding:12px 28px;cursor:pointer;transition:background .2s,box-shadow .2s,transform .1s;box-shadow:0 0 20px #e11d4866}.shooting-start-btn:hover{background:#be123c;box-shadow:0 0 32px #e11d48a6;transform:translateY(-1px)}.shooting-start-btn:active{transform:translateY(0)}@media(max-width:520px){.shooting-page{padding:8px}.shooting-canvas-wrap,.shooting-canvas{width:100%;height:auto;aspect-ratio:3 / 4}.shooting-header{max-width:100%}.shooting-overlay-title{font-size:32px}.shooting-score-value{font-size:18px}}html,body,*,*:before,*:after{cursor:none!important}.custom-cursor-ring,.custom-cursor-dot{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;will-change:transform,opacity;transition:opacity .2s ease,width .2s ease,height .2s ease,background-color .2s ease,border-color .2s ease}.custom-cursor-ring{width:32px;height:32px;border:1.5px solid #18181b;border-radius:50%;background:transparent}.custom-cursor-dot{width:6px;height:6px;background:#18181b;border-radius:50%}.dark .custom-cursor-ring{border-color:#efefef}.dark .custom-cursor-dot{background:#efefef}.custom-cursor-ring.hover{width:56px;height:56px;border-color:#e11d48;background:#e11d4814}.custom-cursor-ring.down{width:24px;height:24px}@media(pointer:coarse){html,body,*,*:before,*:after{cursor:auto!important}.custom-cursor-ring,.custom-cursor-dot{display:none}}.App{min-height:100vh;background:hsl(var(--background))}.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;background:hsl(var(--primary));transform:scaleX(0);transform-origin:left center;z-index:10000;pointer-events:none}
