*,:after,:before{--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:#3b82f680;--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:#3b82f680;--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: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}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,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height: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:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-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,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.inset-0{inset:0}.-left-\[27px\]{left:-27px}.right-0{right:0}.top-0{top:0}.top-6{top:1.5rem}.z-10{z-index:10}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-auto{margin-left:auto}.mt-0\.5{margin-top:.125rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-3\.5{height:.875rem}.h-36{height:9rem}.h-48{height:12rem}.h-56{height:14rem}.h-full{height:100%}.min-h-\[3rem\]{min-height:3rem}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-3\.5{width:.875rem}.w-36{width:9rem}.w-48{width:12rem}.w-72{width:18rem}.w-full{width:100%}.min-w-\[260px\]{min-width:260px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-md{max-width:28rem}.flex-1{flex:1 1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.rotate-180{--tw-rotate:180deg}.rotate-180,.scale-110{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(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{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}.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}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.scroll-mt-24{scroll-margin-top:6rem}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-3\.5{gap:.875rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-3{column-gap:.75rem}.gap-x-4{column-gap:1rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.375rem*var(--tw-space-y-reverse));margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(2.5rem*var(--tw-space-y-reverse));margin-top:calc(2.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-16>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(4rem*var(--tw-space-y-reverse));margin-top:calc(4rem*(1 - var(--tw-space-y-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.625rem*var(--tw-space-y-reverse));margin-top:calc(.625rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.25rem*var(--tw-space-y-reverse));margin-top:calc(1.25rem*(1 - var(--tw-space-y-reverse)))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(2rem*var(--tw-space-y-reverse));margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)))}.self-end{align-self:flex-end}.self-stretch{align-self:stretch}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-\[var\(--accent-primary\)\]{border-color:var(--accent-primary)}.border-\[var\(--border-color\)\]{border-color:var(--border-color)}.border-\[var\(--border-subtle\)\]{border-color:var(--border-subtle)}.bg-\[var\(--accent-emerald\)\]{background-color:var(--accent-emerald)}.bg-\[var\(--accent-primary\)\]{background-color:var(--accent-primary)}.bg-\[var\(--bg-primary\)\]{background-color:var(--bg-primary)}.bg-\[var\(--bg-secondary\)\]{background-color:var(--bg-secondary)}.bg-\[var\(--card-bg\)\]{background-color:var(--card-bg)}.bg-\[var\(--card-hover-bg\)\]{background-color:var(--card-hover-bg)}.bg-black\/30{background-color:#0000004d}.bg-black\/40{background-color:#0006}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-black\/60{--tw-gradient-from:#0009 var(--tw-gradient-from-position);--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-transparent{--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#0000 var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-transparent{--tw-gradient-to:#0000 var(--tw-gradient-to-position)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.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-7{padding-left:1.75rem;padding-right:1.75rem}.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-3\.5{padding-bottom:.875rem;padding-top:.875rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-8{padding-bottom:2rem;padding-top:2rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pl-4{padding-left:1rem}.pl-6{padding-left:1.5rem}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.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-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.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}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-\[var\(--accent-emerald\)\]{color:var(--accent-emerald)}.text-\[var\(--accent-primary\)\]{color:var(--accent-primary)}.text-\[var\(--accent-secondary\)\]{color:var(--accent-secondary)}.text-\[var\(--text-primary\)\]{color:var(--text-primary)}.text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.text-\[var\(--text-tertiary\)\]{color:var(--text-tertiary)}.text-black{--tw-text-opacity:1;color:#000;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.opacity-75{opacity:.75}.opacity-85{opacity:.85}.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-\[0_0_12px_var\(--accent-primary\)\]{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_12px_var\(--accent-primary\)\]{--tw-shadow:0 0 12px var(--accent-primary);--tw-shadow-colored:0 0 12px var(--tw-shadow-color)}.shadow-\[0_0_15px_var\(--accent-glow-subtle\)\]{--tw-shadow:0 0 15px var(--accent-glow-subtle);--tw-shadow-colored:0 0 15px var(--tw-shadow-color)}.shadow-\[0_0_15px_var\(--accent-glow-subtle\)\],.shadow-\[0_0_16px_var\(--accent-glow\)\]{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_16px_var\(--accent-glow\)\]{--tw-shadow:0 0 16px var(--accent-glow);--tw-shadow-colored:0 0 16px var(--tw-shadow-color)}.shadow-\[0_0_6px_var\(--accent-emerald\)\]{--tw-shadow:0 0 6px var(--accent-emerald);--tw-shadow-colored:0 0 6px var(--tw-shadow-color)}.shadow-\[0_0_6px_var\(--accent-emerald\)\],.shadow-\[0_0_6px_var\(--accent-primary\)\]{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_6px_var\(--accent-primary\)\]{--tw-shadow:0 0 6px var(--accent-primary);--tw-shadow-colored:0 0 6px var(--tw-shadow-color)}.shadow-\[0_0_8px_var\(--accent-emerald\)\]{--tw-shadow:0 0 8px var(--accent-emerald);--tw-shadow-colored:0 0 8px var(--tw-shadow-color)}.shadow-\[0_0_8px_var\(--accent-emerald\)\],.shadow-inner{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 #0000000d;--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);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 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-\[var\(--glass-shadow\)\]{--tw-shadow-color:var(--glass-shadow);--tw-shadow:var(--tw-shadow-colored)}.blur{--tw-blur:blur(8px)}.blur,.drop-shadow{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)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f)}.drop-shadow-sm{--tw-drop-shadow:drop-shadow(0 1px 1px #0000000d)}.drop-shadow-sm,.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-2xl{--tw-backdrop-blur:blur(40px)}.backdrop-blur-2xl,.backdrop-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-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px);-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-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-150,.transition-transform{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root.cyberpunk{--bg-primary:#09080e;--bg-secondary:#13111c;--bg-tertiary:#1a1626bf;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-tertiary:#64748b;--accent-primary:#8b5cf6;--accent-secondary:#a855f7;--accent-cyan:#06b6d4;--accent-emerald:#10b981;--accent-glow:#8b5cf673;--accent-glow-subtle:#8b5cf626;--border-color:#ffffff1a;--border-subtle:#ffffff0d;--grid-color:#8b5cf60a;--puzzle-color:#8b5cf673;--card-bg:#13111cb8;--card-hover-bg:#1c182ad9;--glass-shadow:0 12px 36px #00000080,inset 0 1px 0 #ffffff1a}:root.dark{--bg-primary:#060709;--bg-secondary:#0f1218;--bg-tertiary:#121721bf;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-tertiary:#64748b;--accent-primary:#38bdf8;--accent-secondary:#60a5fa;--accent-cyan:#06b6d4;--accent-emerald:#10b981;--accent-glow:#38bdf873;--accent-glow-subtle:#38bdf826;--border-color:#ffffff1a;--border-subtle:#ffffff0d;--grid-color:#38bdf80a;--puzzle-color:#38bdf873;--card-bg:#0f1218b8;--card-hover-bg:#181e2ad9;--glass-shadow:0 12px 36px #00000080,inset 0 1px 0 #ffffff1a}:root.light{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#ffffffd9;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#94a3b8;--accent-primary:#7c3aed;--accent-secondary:#6366f1;--accent-cyan:#0284c7;--accent-emerald:#059669;--accent-glow:#7c3aed38;--accent-glow-subtle:#7c3aed14;--border-color:#0000001a;--border-subtle:#0000000d;--grid-color:#7c3aed0a;--puzzle-color:#7c3aed59;--card-bg:#ffffffd9;--card-hover-bg:#f1f5f9f2;--glass-shadow:0 10px 30px #0000000f,inset 0 1px 0 #fffc}:root{--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in-out:cubic-bezier(0.77,0,0.175,1);--ease-drawer:cubic-bezier(0.32,0.72,0,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--duration-instant:100ms;--duration-fast:160ms;--duration-normal:240ms;--duration-moderate:350ms}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0;overflow-x:hidden;transition:background-color .24s cubic-bezier(.16,1,.3,1),color .24s cubic-bezier(.16,1,.3,1);transition:background-color var(--duration-normal) var(--ease-out),color var(--duration-normal) var(--ease-out)}.font-mono{font-family:Geist Mono,monospace}.font-display{font-family:Bakbak One,cursive}.font-grotesk{font-family:Space Grotesk,sans-serif}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:bottom-3:before{bottom:.75rem;content:var(--tw-content)}.before\:left-2:before{content:var(--tw-content);left:.5rem}.before\:top-3:before{content:var(--tw-content);top:.75rem}.before\:w-0\.5:before{content:var(--tw-content);width:.125rem}.before\:bg-gradient-to-b:before{background-image:linear-gradient(to bottom,var(--tw-gradient-stops));content:var(--tw-content)}.before\:from-\[var\(--accent-primary\)\]:before{--tw-gradient-from:var(--accent-primary) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);content:var(--tw-content)}.before\:via-\[var\(--accent-secondary\)\]:before{--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--accent-secondary) var(--tw-gradient-via-position),var(--tw-gradient-to);content:var(--tw-content)}.before\:to-\[var\(--border-color\)\]:before{--tw-gradient-to:var(--border-color) var(--tw-gradient-to-position);content:var(--tw-content)}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.hover\:scale-105:hover,.hover\:scale-110:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(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}.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)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-\[var\(--accent-emerald\)\]:hover{border-color:var(--accent-emerald)}.hover\:border-\[var\(--accent-primary\)\]:hover{border-color:var(--accent-primary)}.hover\:border-\[var\(--accent-secondary\)\]:hover{border-color:var(--accent-secondary)}.hover\:bg-\[var\(--bg-secondary\)\]:hover{background-color:var(--bg-secondary)}.hover\:bg-\[var\(--card-hover-bg\)\]:hover{background-color:var(--card-hover-bg)}.hover\:text-\[var\(--accent-primary\)\]:hover{color:var(--accent-primary)}.hover\:text-\[var\(--text-primary\)\]:hover{color:var(--text-primary)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_20px_var\(--accent-glow-subtle\)\]:hover{--tw-shadow:0 0 20px var(--accent-glow-subtle);--tw-shadow-colored:0 0 20px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);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 #0000;outline-offset:2px}.focus-visible\:underline:focus-visible{text-decoration-line:underline}.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),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-\[var\(--accent-primary\)\]:focus-visible{--tw-ring-color:var(--accent-primary)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95}.active\:scale-95:active,.group:hover .group-hover\:translate-x-1{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(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:0.25rem}.group:hover .group-hover\: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)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-\[var\(--accent-primary\)\]{border-color:var(--accent-primary)}.group:hover .group-hover\:text-\[var\(--accent-primary\)\]{color:var(--accent-primary)}.group:hover .group-hover\:text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}@media (min-width:640px){.sm\:-left-\[35px\]{left:-35px}.sm\:inline{display:inline}.sm\:h-44{height:11rem}.sm\:h-60{height:15rem}.sm\:h-64{height:16rem}.sm\:min-h-\[3\.5rem\]{min-height:3.5rem}.sm\:w-44{width:11rem}.sm\:w-60{width:15rem}.sm\:w-auto{width:auto}.sm\:min-w-\[320px\]{min-width:320px}.sm\:max-w-none{max-width:none}.sm\:flex-initial{flex:0 1 auto}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-end{align-items:flex-end}.sm\:items-center{align-items:center}.sm\:justify-start{justify-content:flex-start}.sm\:gap-2{gap:.5rem}.sm\:gap-4{gap:1rem}.sm\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.sm\:self-auto{align-self:auto}.sm\:self-start{align-self:flex-start}.sm\:p-10{padding:2.5rem}.sm\:p-6{padding:1.5rem}.sm\:p-7{padding:1.75rem}.sm\:p-8{padding:2rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.sm\:py-16{padding-bottom:4rem;padding-top:4rem}.sm\:py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.sm\:pl-8{padding-left:2rem}.sm\:pt-4{padding-top:1rem}.sm\:pt-8{padding-top:2rem}.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-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-6xl{font-size:3.75rem;line-height:1}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}.sm\:before\:left-3:before{content:var(--tw-content);left:.75rem}}@media (min-width:768px){.md\:inline{display:inline}.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\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-7xl{font-size:4.5rem;line-height:1}}@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:flex-col{flex-direction:column}.lg\:items-end{align-items:flex-end}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:text-5xl{font-size:3rem;line-height:1}}@media print{.print\:hidden{display:none}.print\:border-none{border-style:none}.print\:border-black{--tw-border-opacity:1;border-color:#000;border-color:rgb(0 0 0/var(--tw-border-opacity,1))}.print\:bg-white{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.print\:p-0{padding:0}.print\:pb-3{padding-bottom:.75rem}.print\:text-2xl{font-size:1.5rem;line-height:2rem}.print\:text-black{--tw-text-opacity:1;color:#000;color:rgb(0 0 0/var(--tw-text-opacity,1))}.print\:text-gray-700{--tw-text-opacity:1;color:#374151;color:rgb(55 65 81/var(--tw-text-opacity,1))}.print\:shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}}.bakbak{font-family:Bakbak One,cursive}.theme-toggle-btn{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:var(--card-bg);border:2px solid var(--accent-primary);border-radius:50px;bottom:30px;box-shadow:0 0 20px var(--accent-glow);color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:10px;left:30px;padding:12px 20px;position:fixed;transform-origin:bottom left;transition:transform var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);z-index:100}@media (hover:hover) and (pointer:fine){.theme-toggle-btn:hover{background-color:var(--accent-primary);box-shadow:0 0 30px var(--accent-glow);transform:scale(1.05)}}.theme-toggle-btn:active{transform:scale(.97);transition-duration:var(--duration-instant)}.theme-icon{align-items:center;display:flex;font-size:20px}.theme-label{font-family:Geist Mono,monospace;letter-spacing:1px;text-transform:uppercase}@media (max-width:768px){.theme-toggle-btn{bottom:20px;font-size:12px;left:20px;padding:10px 16px}.theme-icon{font-size:18px}}.puzzle-piece{cursor:grab;display:block;filter:drop-shadow(0 0 14px var(--accent-glow));opacity:.68;position:fixed;touch-action:none;transform-origin:center center;transition:opacity var(--duration-normal) var(--ease-out),filter var(--duration-normal) var(--ease-out);-webkit-user-select:none;user-select:none;will-change:transform,opacity;z-index:15}.puzzle-piece:active{cursor:grabbing}@media (hover:hover) and (pointer:fine){.puzzle-piece:hover{filter:drop-shadow(0 0 24px var(--accent-glow));opacity:.95;transform:scale(1.08);z-index:30}}.puzzle-piece.dragging{animation:none!important;cursor:grabbing;filter:drop-shadow(0 0 32px var(--accent-glow));opacity:1;transition:none!important;z-index:50}.puzzle-piece.moving.puzzle-ambient-1{animation:puzzleFloat1 5.5s ease-in-out infinite alternate}.puzzle-piece.moving.puzzle-ambient-2{animation:puzzleFloat2 6.5s ease-in-out infinite alternate}.puzzle-piece.moving.puzzle-ambient-3{animation:puzzleFloat3 5s ease-in-out infinite alternate}.puzzle-piece.moving.puzzle-ambient-4{animation:puzzleFloat4 7s ease-in-out infinite alternate}.puzzle-piece.moving.puzzle-ambient-5{animation:puzzleFloat5 5.8s ease-in-out infinite alternate}.puzzle-piece.moving.puzzle-ambient-6{animation:puzzleFloat6 6.2s ease-in-out infinite alternate}.puzzle-piece.moving.puzzle-ambient-7{animation:puzzleFloat7 5.2s ease-in-out infinite alternate}.puzzle-piece.moving.puzzle-ambient-8{animation:puzzleFloat2 5.8s ease-in-out infinite alternate}.puzzle-piece.moving.puzzle-ambient-9{animation:puzzleFloat5 6.6s ease-in-out infinite alternate}.puzzle-piece.moving.puzzle-ambient-10{animation:puzzleFloat3 5.4s ease-in-out infinite alternate}.puzzle-piece.moving.puzzle-ambient-11{animation:puzzleFloat6 6.8s ease-in-out infinite alternate}.puzzle-piece.moving.puzzle-ambient-12{animation:puzzleFloat1 7.2s ease-in-out infinite alternate}.puzzle-piece.moving:not([class*=puzzle-ambient-]){animation:puzzleFloat1 5.5s ease-in-out infinite alternate}@keyframes puzzleFloat1{0%{transform:translate(0) rotate(0deg)}33%{transform:translate(22px,-24px) rotate(4deg)}66%{transform:translate(-16px,18px) rotate(-3deg)}to{transform:translate(26px,16px) rotate(5deg)}}@keyframes puzzleFloat2{0%{transform:translate(0) rotate(0deg)}33%{transform:translate(-26px,22px) rotate(-4.5deg)}66%{transform:translate(18px,-16px) rotate(3deg)}to{transform:translate(-22px,-26px) rotate(-5deg)}}@keyframes puzzleFloat3{0%{transform:translate(0) rotate(0deg)}33%{transform:translate(20px,26px) rotate(3.5deg)}66%{transform:translate(-22px,-18px) rotate(-4deg)}to{transform:translate(16px,-24px) rotate(4deg)}}@keyframes puzzleFloat4{0%{transform:translate(0) rotate(0deg)}33%{transform:translate(-24px,-28px) rotate(-5deg)}66%{transform:translate(26px,22px) rotate(4deg)}to{transform:translate(-20px,26px) rotate(-3.5deg)}}@keyframes puzzleFloat5{0%{transform:translate(0) rotate(0deg)}33%{transform:translate(28px,16px) rotate(4deg)}66%{transform:translate(-18px,-26px) rotate(-3deg)}to{transform:translate(24px,-16px) rotate(5deg)}}@keyframes puzzleFloat6{0%{transform:translate(0) rotate(0deg)}33%{transform:translate(-20px,28px) rotate(-4deg)}66%{transform:translate(24px,-22px) rotate(5deg)}to{transform:translate(-28px,-16px) rotate(-3deg)}}@keyframes puzzleFloat7{0%{transform:translate(0) rotate(0deg)}33%{transform:translate(26px,-20px) rotate(5deg)}66%{transform:translate(-24px,26px) rotate(-4deg)}to{transform:translate(20px,22px) rotate(3deg)}}.grid-bg{background-color:var(--bg-primary);background-image:linear-gradient(var(--grid-color) 1px,#0000 1px),linear-gradient(90deg,var(--grid-color) 1px,#0000 1px);background-size:30px 30px;transition:background-color var(--duration-normal) var(--ease-out)}.ambient-glow-orb-1{animation:orbDrift1 12s ease-in-out infinite alternate;background:radial-gradient(circle,var(--accent-glow) 0,#0000 65%);filter:blur(60px);-webkit-filter:blur(60px);height:450px;left:10%;opacity:.35;top:5%;width:450px}.ambient-glow-orb-1,.ambient-glow-orb-2{border-radius:50%;pointer-events:none;position:fixed;will-change:transform;z-index:1}.ambient-glow-orb-2{animation:orbDrift2 16s ease-in-out infinite alternate;background:radial-gradient(circle,var(--accent-secondary) 0,#0000 65%);bottom:10%;filter:blur(65px);-webkit-filter:blur(65px);height:500px;opacity:.22;right:8%;width:500px}@keyframes orbDrift1{0%{transform:translate(0) scale(1)}50%{transform:translate(60px,40px) scale(1.15)}to{transform:translate(-30px,70px) scale(.95)}}@keyframes orbDrift2{0%{transform:translate(0) scale(1)}50%{transform:translate(-50px,-60px) scale(1.2)}to{transform:translate(40px,-30px) scale(.9)}}.avatar-levitate{animation:avatarFloat 5s ease-in-out infinite;transition:transform var(--duration-moderate) var(--ease-out),filter var(--duration-moderate) var(--ease-out)}@media (hover:hover) and (pointer:fine){.avatar-levitate:hover{filter:drop-shadow(0 0 35px var(--accent-glow))!important;transform:translateY(-8px) scale(1.05) rotate(1deg)}}@keyframes avatarFloat{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-8px) rotate(1deg)}}.btn-shimmer-sheen{overflow:hidden;position:relative;transition:transform var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.btn-shimmer-sheen:after{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:200%;left:-60%;pointer-events:none;position:absolute;top:-50%;transform:rotate(25deg);transition:transform .6s var(--ease-out);width:40%}@media (hover:hover) and (pointer:fine){.btn-shimmer-sheen:hover:after{transform:translateX(350%) rotate(25deg)}}.scroll-reveal-card{opacity:0;transform:translateY(32px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1),background-color var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out);will-change:opacity,transform}.scroll-reveal-card.in-view{opacity:1;transform:translateY(0)}.card-reveal{animation:cardFadeUp var(--duration-moderate) var(--ease-out) forwards;opacity:0;transform:translateY(16px)}.stagger-0{animation-delay:.04s}.stagger-1{animation-delay:.08s}.stagger-2{animation-delay:.12s}.stagger-3{animation-delay:.16s}.stagger-4{animation-delay:.2s}@keyframes cardFadeUp{to{opacity:1;transform:translateY(0)}}.project-card-interactive{transition:transform var(--duration-normal) var(--ease-out),background-color var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}@media (hover:hover) and (pointer:fine){.project-card-interactive:hover{background-color:var(--card-hover-bg)!important;border-color:var(--accent-primary)!important;box-shadow:0 12px 35px var(--accent-glow)!important;transform:translateY(-6px) scale(1.01)}}.project-card-interactive:active{transform:translateY(-2px) scale(.99);transition-duration:var(--duration-instant)}.pill-motion{transition:transform var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}@media (hover:hover) and (pointer:fine){.pill-motion:hover{border-color:var(--accent-primary)!important;box-shadow:0 4px 15px var(--accent-glow);transform:translateY(-2px) scale(1.04)}}.pill-motion:active{transform:translateY(0) scale(.97);transition-duration:var(--duration-instant)}.title-glow-pulse{animation:titleGlowBreath 4s ease-in-out infinite}@keyframes titleGlowBreath{0%,to{text-shadow:0 0 15px var(--accent-glow)}50%{text-shadow:0 0 30px var(--accent-glow),0 0 45px var(--accent-glow)}}.gradient-text-shimmer{animation:gradientSweep 6s ease-in-out infinite;background:linear-gradient(135deg,var(--text-primary) 0,var(--accent-secondary) 50%,var(--text-primary) 100%);-webkit-background-clip:text;background-clip:text;background-size:200% auto;color:#0000}@keyframes gradientSweep{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes subtleBob{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}.animate-subtle-bob{animation:subtleBob 2s ease-in-out infinite}.animate-wave-hand{animation:waveHand 2.5s infinite;display:inline-block;transform-origin:70% 70%}@keyframes waveHand{0%{transform:rotate(0deg)}10%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}30%{transform:rotate(14deg)}40%{transform:rotate(-4deg)}50%{transform:rotate(10deg)}60%,to{transform:rotate(0deg)}}.status-beacon-ping{animation:radarPing 2s cubic-bezier(0,0,.2,1) infinite;background-color:var(--accent-primary);border-radius:50%;height:100%;left:0;opacity:.75;position:absolute;top:0;width:100%}@keyframes radarPing{0%{opacity:.8;transform:scale(.95)}70%,to{opacity:0;transform:scale(2.4)}}.avatar-halo-glow{animation:heroAuraPulse 4s ease-in-out infinite alternate;background:radial-gradient(circle,var(--accent-glow) 0,#0000 70%);filter:blur(28px);-webkit-filter:blur(28px);height:115%;opacity:.45;width:115%}.avatar-halo-glow,.avatar-halo-secondary{border-radius:50%;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:0}.avatar-halo-secondary{animation:heroAuraPulse 6s ease-in-out infinite alternate-reverse;background:radial-gradient(circle,var(--accent-secondary) 0,#0000 65%);filter:blur(42px);-webkit-filter:blur(42px);height:140%;opacity:.22;width:140%}@keyframes heroAuraPulse{0%{opacity:.25;transform:translate(-50%,-50%) scale(.95)}to{opacity:.55;transform:translate(-50%,-50%) scale(1.15)}}.typing-cursor{animation:cursorBlink .9s steps(2,start) infinite;background-color:var(--accent-primary);border-radius:2px;box-shadow:0 0 10px var(--accent-glow);display:inline-block;height:1em;vertical-align:-.05em;width:3px}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.puzzle-tagline{bottom:30px;color:var(--puzzle-color);font-size:13px;font-style:italic;left:50%;max-width:420px;pointer-events:none;position:fixed;text-align:center;text-shadow:0 0 10px var(--accent-glow);transform:translateX(-50%);transition:opacity var(--duration-fast) var(--ease-out);width:-webkit-max-content;width:max-content;z-index:5}@media (max-width:768px){.puzzle-tagline{bottom:20px;font-size:11px;max-width:calc(100vw - 200px);width:auto}}.chat-widget-btn{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:var(--card-bg);border:2px solid var(--accent-primary);border-radius:50%;bottom:30px;box-shadow:0 0 20px var(--accent-glow);color:var(--text-primary);cursor:pointer;display:flex;height:52px;justify-content:center;position:fixed;right:30px;transform-origin:bottom right;transition:transform var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);width:52px;z-index:100}@media (hover:hover) and (pointer:fine){.chat-widget-btn:hover{background-color:var(--accent-primary);box-shadow:0 0 30px var(--accent-glow);transform:scale(1.08)}}.chat-widget-btn:active{transform:scale(.95);transition-duration:var(--duration-instant)}.chat-panel{animation:chat-panel-enter var(--duration-normal) var(--ease-drawer) forwards;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background-color:var(--card-bg);border:2px solid var(--accent-primary);border-radius:16px;bottom:96px;box-shadow:0 0 40px var(--accent-glow),0 8px 32px #0006;display:flex;flex-direction:column;height:520px;max-height:calc(100vh - 120px);max-width:calc(100vw - 48px);overflow:hidden;position:fixed;right:30px;transform-origin:bottom right;width:380px;z-index:99}@keyframes chat-panel-enter{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.chat-panel-header{align-items:center;border-bottom:1px solid var(--accent-primary);display:flex;flex-shrink:0;justify-content:space-between;padding:14px 16px}.chat-panel-title{align-items:center;color:var(--text-primary);display:flex;font-family:Geist Mono,monospace;font-size:13px;font-weight:600;gap:8px;letter-spacing:.5px;text-transform:uppercase}.chat-panel-dot{animation:pulse-dot 2s ease-in-out infinite;background-color:var(--accent-primary);border-radius:50%;box-shadow:0 0 6px var(--accent-glow);height:8px;width:8px}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.chat-panel-close{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;opacity:.6;padding:4px;transition:opacity var(--duration-fast) var(--ease-out)}.chat-panel-close:hover{opacity:1}.chat-messages{flex:1 1;gap:10px;overflow-y:auto;padding:14px 14px 8px;scrollbar-color:var(--accent-primary) #0000;scrollbar-width:thin}.chat-messages,.chat-starters{display:flex;flex-direction:column}.chat-starters{gap:8px;padding-top:4px}.chat-starters-label{color:var(--text-primary);font-family:Geist Mono,monospace;font-size:12px;margin-bottom:2px;opacity:.5}.chat-starter-btn{background:#0000;border:1px solid var(--accent-primary);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:13px;opacity:.75;padding:8px 12px;text-align:left;transition:background-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),opacity var(--duration-fast) var(--ease-out)}@media (hover:hover) and (pointer:fine){.chat-starter-btn:hover{background-color:var(--accent-primary);box-shadow:0 0 12px var(--accent-glow);opacity:1}}.chat-starter-btn:active{transform:scale(.98);transition-duration:var(--duration-instant)}.chat-message{animation:chatMessageFadeIn var(--duration-fast) var(--ease-out) forwards;display:flex;flex-direction:column;gap:4px}@keyframes chatMessageFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-message-user{align-items:flex-end}.chat-message-assistant{align-items:flex-start}.chat-bubble{border-radius:12px;color:var(--text-primary);font-size:14px;line-height:1.5;max-width:88%;padding:9px 13px;white-space:pre-wrap;word-break:break-word}.chat-message-user .chat-bubble{background-color:var(--accent-primary);border-bottom-right-radius:4px;color:#fff}.chat-message-assistant .chat-bubble{background-color:var(--bg-primary);border:1px solid var(--accent-primary);border-bottom-left-radius:4px;opacity:.95}.chat-typing{align-items:center;display:flex;gap:5px;padding:11px 16px}.chat-dot{animation:chat-bounce 1.2s ease-in-out infinite;background-color:var(--accent-primary);border-radius:50%;height:7px;width:7px}.chat-dot:nth-child(2){animation-delay:.2s}.chat-dot:nth-child(3){animation-delay:.4s}@keyframes chat-bounce{0%,80%,to{opacity:.4;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}.chat-sources{display:flex;flex-wrap:wrap;gap:4px;padding-left:4px}.chat-source-chip{background:#0000;border:1px solid var(--accent-primary);border-radius:999px;color:var(--text-primary);font-family:Geist Mono,monospace;font-size:10px;letter-spacing:.3px;opacity:.55;padding:2px 7px}.chat-input-row{align-items:flex-end;border-top:1px solid var(--accent-primary);display:flex;flex-shrink:0;gap:8px;padding:10px 12px 12px}.chat-input{background:var(--bg-primary);border:1px solid var(--accent-primary);border-radius:10px;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:14px;line-height:1.4;max-height:120px;outline:none;overflow-y:auto;padding:9px 12px;resize:none;transition:box-shadow var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.chat-input:focus{box-shadow:0 0 10px var(--accent-glow)}.chat-input::placeholder{opacity:.4}.chat-input:disabled{opacity:.5}.chat-send-btn{align-items:center;background-color:var(--accent-primary);border:none;border-radius:10px;box-shadow:0 0 10px var(--accent-glow);color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:38px;justify-content:center;transition:transform var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),opacity var(--duration-fast) var(--ease-out);width:38px}@media (hover:hover) and (pointer:fine){.chat-send-btn:hover:not(:disabled){box-shadow:0 0 18px var(--accent-glow);transform:scale(1.05)}}.chat-send-btn:active:not(:disabled){transform:scale(.94);transition-duration:var(--duration-instant)}.chat-send-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.35}@media (max-width:768px){.chat-widget-btn{bottom:20px;right:20px}.chat-panel{bottom:84px;max-width:none;right:12px;width:calc(100vw - 24px)}}@media (prefers-reduced-motion:reduce){.animate-subtle-bob,.avatar-levitate,.chat-dot,.chat-panel-dot,.title-glow-pulse{animation:none!important}.puzzle-piece.moving{animation-duration:12s!important}.card-reveal,.scroll-reveal-card{transition:none!important}.card-reveal,.chat-message,.chat-panel,.scroll-reveal-card{animation:none!important;opacity:1!important;transform:none!important}.btn-shimmer-sheen,.chat-send-btn,.chat-starter-btn,.chat-widget-btn,.pill-motion,.project-card-interactive,.theme-toggle-btn,body{transform:none!important;transition-duration:.15s!important;transition-property:background-color,color,border-color,opacity,box-shadow!important}}:focus-visible{outline:2px solid var(--accent-primary)!important;outline-offset:2px!important}.text-gradient{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--text-primary) 0,var(--accent-primary) 60%,var(--accent-secondary) 100%);-webkit-background-clip:text}@media print{body{background:#fff!important;color:#000!important;font-size:11pt!important;line-height:1.35!important}.chat-panel,.chat-widget-btn,.print\:hidden,.puzzle-piece,.theme-toggle-btn,header .print\:hidden,nav{display:none!important}.print\:border-black{border-color:#111!important}.print\:text-black{-webkit-text-fill-color:initial!important;color:#000!important}.space-y-4>div,.space-y-5>div,section{break-inside:avoid;page-break-inside:avoid}@page{size:letter;margin:.5in}}
/*# sourceMappingURL=main.b0d9dddb.css.map*/