*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.right-0{right:0}.right-2{right:.5rem}.top-2{top:.5rem}.z-10{z-index:10}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-12{height:3rem}.h-2{height:.5rem}.h-24{height:6rem}.h-32{height:8rem}.h-56{height:14rem}.h-8{height:2rem}.h-full{height:100%}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-12{width:3rem}.w-2{width:.5rem}.w-24{width:6rem}.w-32{width:8rem}.w-56{width:14rem}.w-8{width:2rem}.w-full{width:100%}.max-w-7xl{max-width:80rem}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.scale-125{--tw-scale-x: 1.25;--tw-scale-y: 1.25;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-bounce{animation:bounce 1s infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-t{border-top-width:1px}.border-blue-500\/30{border-color:#3b82f64d}.border-gray-500\/30{border-color:#6b72804d}.border-gray-600\/30{border-color:#4b55634d}.border-gray-600\/40{border-color:#4b556366}.border-gray-700\/30{border-color:#3741514d}.border-gray-800\/30{border-color:#1f29374d}.border-green-500\/30{border-color:#22c55e4d}.border-slate-600\/30{border-color:#4755694d}.border-stone-600\/30{border-color:#57534e4d}.border-zinc-600\/30{border-color:#52525b4d}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500\/20{background-color:#3b82f633}.bg-blue-600\/20{background-color:#2563eb33}.bg-blue-600\/90{background-color:#2563ebe6}.bg-gray-500\/20{background-color:#6b728033}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.bg-gray-600\/20{background-color:#4b556333}.bg-gray-800\/80{background-color:#1f2937cc}.bg-gray-800\/90{background-color:#1f2937e6}.bg-green-500\/20{background-color:#22c55e33}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.bg-gradient-to-tl{background-image:linear-gradient(to top left,var(--tw-gradient-stops))}.from-black\/60{--tw-gradient-from: rgb(0 0 0 / .6) var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500\/10{--tw-gradient-from: rgb(59 130 246 / .1) var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-700{--tw-gradient-from: #374151 var(--tw-gradient-from-position);--tw-gradient-to: rgb(55 65 81 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-800{--tw-gradient-from: #1f2937 var(--tw-gradient-from-position);--tw-gradient-to: rgb(31 41 55 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-800\/80{--tw-gradient-from: rgb(31 41 55 / .8) var(--tw-gradient-from-position);--tw-gradient-to: rgb(31 41 55 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900\/50{--tw-gradient-from: rgb(17 24 39 / .5) var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-slate-700{--tw-gradient-from: #334155 var(--tw-gradient-from-position);--tw-gradient-to: rgb(51 65 85 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-stone-700{--tw-gradient-from: #44403c var(--tw-gradient-from-position);--tw-gradient-to: rgb(68 64 60 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/5{--tw-gradient-from: rgb(255 255 255 / .05) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-zinc-700{--tw-gradient-from: #3f3f46 var(--tw-gradient-from-position);--tw-gradient-to: rgb(63 63 70 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-purple-500\/10{--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(168 85 247 / .1) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-transparent{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-black{--tw-gradient-to: #000 var(--tw-gradient-to-position)}.to-black\/20{--tw-gradient-to: rgb(0 0 0 / .2) var(--tw-gradient-to-position)}.to-black\/80{--tw-gradient-to: rgb(0 0 0 / .8) var(--tw-gradient-to-position)}.to-blue-500\/10{--tw-gradient-to: rgb(59 130 246 / .1) var(--tw-gradient-to-position)}.to-gray-700\/80{--tw-gradient-to: rgb(55 65 81 / .8) var(--tw-gradient-to-position)}.to-gray-900{--tw-gradient-to: #111827 var(--tw-gradient-to-position)}.to-slate-900{--tw-gradient-to: #0f172a var(--tw-gradient-to-position)}.to-stone-900{--tw-gradient-to: #1c1917 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-zinc-900{--tw-gradient-to: #18181b var(--tw-gradient-to-position)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.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}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-wide{letter-spacing:.025em}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-75{opacity:.75}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-black\/40{--tw-shadow-color: rgb(0 0 0 / .4);--tw-shadow: var(--tw-shadow-colored)}.shadow-black\/50{--tw-shadow-color: rgb(0 0 0 / .5);--tw-shadow: var(--tw-shadow-colored)}.shadow-black\/90{--tw-shadow-color: rgb(0 0 0 / .9);--tw-shadow: var(--tw-shadow-colored)}.ring-4{--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(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-white\/10{--tw-ring-color: rgb(255 255 255 / .1)}.blur-xl{--tw-blur: blur(24px);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 rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));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-lg{--tw-drop-shadow: drop-shadow(0 10px 8px rgb(0 0 0 / .04)) drop-shadow(0 4px 3px rgb(0 0 0 / .1));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.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-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes bounceGentle{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fade-in{animation:fadeIn 1s ease-out}.animate-fade-in-delay{animation:fadeIn 1s ease-out .3s both}.animate-slide-in-left{animation:slideInLeft .8s ease-out}.animate-slide-in-left-delay{animation:slideInLeft .8s ease-out .2s both}.animate-bounce-slow{animation:bounceGentle 3s ease-in-out infinite}.animate-spin-slow{animation:spinSlow 4s linear infinite}.animation-delay-200{animation-delay:.2s}.animation-delay-400{animation-delay:.4s}@keyframes floatGentle{0%,to{transform:translateY(0);animation-timing-function:cubic-bezier(.4,0,.6,1)}50%{transform:translateY(-2px);animation-timing-function:cubic-bezier(.4,0,.6,1)}}@keyframes scaleBreath{0%,to{transform:scale(1);animation-timing-function:cubic-bezier(.25,.46,.45,.94)}50%{transform:scale(1.005);animation-timing-function:cubic-bezier(.25,.46,.45,.94)}}@keyframes glowPulse{0%,to{box-shadow:0 25px 50px -12px #000000b3;animation-timing-function:cubic-bezier(.4,0,.6,1)}50%{box-shadow:0 25px 50px -12px #000000d9,0 0 15px #ffffff08;animation-timing-function:cubic-bezier(.4,0,.6,1)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes rotateSubtle{0%{transform:rotate(0);animation-timing-function:cubic-bezier(.25,.46,.45,.94)}25%{transform:rotate(.3deg);animation-timing-function:cubic-bezier(.25,.46,.45,.94)}75%{transform:rotate(-.3deg);animation-timing-function:cubic-bezier(.25,.46,.45,.94)}to{transform:rotate(0);animation-timing-function:cubic-bezier(.25,.46,.45,.94)}}.animate-float-gentle{animation:floatGentle 5s cubic-bezier(.4,0,.6,1) infinite}.animate-scale-breath{animation:scaleBreath 4s cubic-bezier(.25,.46,.45,.94) infinite}.animate-glow-pulse{animation:glowPulse 5s cubic-bezier(.4,0,.6,1) infinite}.animate-slide-in-up{animation:slideInUp .8s ease-out}.animate-rotate-subtle{animation:rotateSubtle 8s cubic-bezier(.25,.46,.45,.94) infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes glow{0%,to{box-shadow:0 0 5px #3b82f64d,0 0 10px #3b82f633,0 0 15px #3b82f61a}50%{box-shadow:0 0 10px #3b82f680,0 0 20px #3b82f64d,0 0 30px #3b82f633}}@keyframes pulse-glow{0%,to{box-shadow:0 0 5px #a855f74d,0 0 10px #a855f733}50%{box-shadow:0 0 10px #a855f780,0 0 20px #a855f74d}}@keyframes golden-glow{0%,to{box-shadow:0 0 5px #fbbf244d,0 0 10px #fbbf2433}50%{box-shadow:0 0 10px #fbbf2480,0 0 20px #fbbf244d}}@keyframes orange-pulse{0%,to{box-shadow:0 0 5px #f9731666,0 0 10px #f973164d,0 0 15px #f9731633}50%{box-shadow:0 0 10px #f9731699,0 0 20px #f9731666,0 0 30px #f973164d}}.metallic-base{background:linear-gradient(135deg,#475569e6,#334155f2,#1e293b,#334155f2,#475569e6);border:1px solid rgba(148,163,184,.3);position:relative;overflow:hidden}.metallic-base:before{content:"";position:absolute;top:0;left:-200%;width:200%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),rgba(255,255,255,.2),rgba(255,255,255,.1),transparent);animation:shimmer 3s infinite}.metallic-blue{background:linear-gradient(135deg,#1e3a8ae6,#3b82f6cc,#2563eb,#3b82f6cc,#1e3a8ae6);border:1px solid rgba(59,130,246,.4);animation:glow 2s ease-in-out infinite}.metallic-purple{background:linear-gradient(135deg,#581c87e6,#a855f7cc,#9333ea,#a855f7cc,#581c87e6);border:1px solid rgba(168,85,247,.4);animation:pulse-glow 2.5s ease-in-out infinite}.metallic-orange{background:linear-gradient(135deg,#9a3412e6,#f97316cc,#ea580c,#f97316cc,#9a3412e6);border:1px solid rgba(249,115,22,.4);animation:orange-pulse 2s ease-in-out infinite}.metallic-hover{transition:all .3s cubic-bezier(.4,0,.2,1)}.metallic-hover:hover{transform:translateY(-2px) scale(1.05);filter:brightness(1.2)}@keyframes bounce-tech{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.1)}}@keyframes rotate-tech{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.15)}to{transform:rotate(360deg) scale(1)}}@keyframes pulse-tech{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}@keyframes shake-tech{0%,to{transform:translate(0) scale(1)}25%{transform:translate(-3px) scale(1.05)}75%{transform:translate(3px) scale(1.05)}}@keyframes flip-tech{0%{transform:rotateY(0) scale(1)}50%{transform:rotateY(180deg) scale(1.1)}to{transform:rotateY(360deg) scale(1)}}@keyframes wobble-tech{0%,to{transform:rotate(0) scale(1)}25%{transform:rotate(-5deg) scale(1.05)}75%{transform:rotate(5deg) scale(1.05)}}@keyframes zoom-tech{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes swing-tech{0%,to{transform:rotate(0) scale(1)}20%{transform:rotate(15deg) scale(1.05)}40%{transform:rotate(-10deg) scale(1.1)}60%{transform:rotate(5deg) scale(1.05)}80%{transform:rotate(-5deg) scale(1.05)}}.tech-html:hover .tech-icon{animation:bounce-tech .6s ease-in-out}.tech-css:hover .tech-icon{animation:rotate-tech .8s ease-in-out}.tech-js:hover .tech-icon{animation:shake-tech .5s ease-in-out}.tech-react:hover .tech-icon{animation:rotate-tech 1s linear}.tech-vue:hover .tech-icon{animation:pulse-tech .6s ease-in-out}.tech-ts:hover .tech-icon{animation:flip-tech .8s ease-in-out}.tech-tailwind:hover .tech-icon{animation:wobble-tech .7s ease-in-out}.tech-sass:hover .tech-icon{animation:swing-tech .9s ease-in-out}.tech-card:hover{transform:translateY(-5px) scale(1.05);transition:all .3s cubic-bezier(.4,0,.2,1)}.tech-card:hover .tech-container{transform:scale(1.1);transition:all .3s cubic-bezier(.4,0,.2,1)}@keyframes github-pulse{0%,to{transform:scale(1) rotate(0);box-shadow:0 0 10px #58a6ff4d}50%{transform:scale(1.1) rotate(5deg);box-shadow:0 0 20px #58a6ff99}}@keyframes website-spin{0%{transform:rotate(0) scale(1);box-shadow:0 0 10px #22c55e4d}to{transform:rotate(360deg) scale(1.15);box-shadow:0 0 25px #22c55eb3}}@keyframes linkedin-bounce{0%,to{transform:translateY(0) scale(1);box-shadow:0 0 10px #0ea5e94d}25%{transform:translateY(-8px) scale(1.1);box-shadow:0 0 20px #0ea5e999}75%{transform:translateY(-4px) scale(1.05);box-shadow:0 0 15px #0ea5e980}}@keyframes email-shake{0%,to{transform:translate(0) scale(1);box-shadow:0 0 10px #ef44444d}25%{transform:translate(-3px) scale(1.05);box-shadow:0 0 15px #ef444480}75%{transform:translate(3px) scale(1.05);box-shadow:0 0 15px #ef444480}}@keyframes portfolio-glow{0%,to{transform:scale(1);box-shadow:0 0 10px #a855f74d}50%{transform:scale(1.2);box-shadow:0 0 30px #a855f7cc}}.portfolio-github:hover .portfolio-icon{animation:github-pulse .8s ease-in-out}.portfolio-website:hover .portfolio-icon{animation:website-spin 1s ease-in-out}.portfolio-linkedin:hover .portfolio-icon{animation:linkedin-bounce .6s ease-in-out}.portfolio-email:hover .portfolio-icon{animation:email-shake .5s ease-in-out}.portfolio-portfolio:hover .portfolio-icon{animation:portfolio-glow .7s ease-in-out}@keyframes neon-flicker{0%,to{text-shadow:0 0 5px currentColor,0 0 10px currentColor,0 0 15px currentColor,0 0 20px currentColor;box-shadow:0 0 5px currentColor,0 0 10px currentColor,0 0 15px currentColor,0 0 20px currentColor,inset 0 0 5px currentColor}50%{text-shadow:0 0 2px currentColor,0 0 5px currentColor,0 0 8px currentColor,0 0 12px currentColor;box-shadow:0 0 2px currentColor,0 0 5px currentColor,0 0 8px currentColor,0 0 12px currentColor,inset 0 0 2px currentColor}}@keyframes neon-buzz{0%,to{filter:brightness(1) saturate(1);transform:scale(1)}50%{filter:brightness(1.2) saturate(1.3);transform:scale(1.05)}}@keyframes neon-pulse-github{0%,to{box-shadow:0 0 2px #58a6ff,0 0 5px #58a6ff,0 0 8px #58a6ff,0 0 12px #58a6ff,inset 0 0 2px #58a6ff}50%{box-shadow:0 0 4px #58a6ff,0 0 8px #58a6ff,0 0 12px #58a6ff,0 0 16px #58a6ff,inset 0 0 4px #58a6ff}}@keyframes neon-pulse-website{0%,to{box-shadow:0 0 2px #22c55e,0 0 5px #22c55e,0 0 8px #22c55e,0 0 12px #22c55e,inset 0 0 2px #22c55e}50%{box-shadow:0 0 4px #22c55e,0 0 8px #22c55e,0 0 12px #22c55e,0 0 16px #22c55e,inset 0 0 4px #22c55e}}@keyframes neon-pulse-linkedin{0%,to{box-shadow:0 0 2px #0ea5e9,0 0 5px #0ea5e9,0 0 8px #0ea5e9,0 0 12px #0ea5e9,inset 0 0 2px #0ea5e9}50%{box-shadow:0 0 4px #0ea5e9,0 0 8px #0ea5e9,0 0 12px #0ea5e9,0 0 16px #0ea5e9,inset 0 0 4px #0ea5e9}}@keyframes neon-pulse-email{0%,to{box-shadow:0 0 2px #f97316,0 0 5px #f97316,0 0 8px #f97316,0 0 12px #f97316,inset 0 0 2px #f97316}50%{box-shadow:0 0 4px #f97316,0 0 8px #f97316,0 0 12px #f97316,0 0 16px #f97316,inset 0 0 4px #f97316}}@keyframes neon-pulse-portfolio{0%,to{box-shadow:0 0 2px #a855f7,0 0 5px #a855f7,0 0 8px #a855f7,0 0 12px #a855f7,inset 0 0 2px #a855f7}50%{box-shadow:0 0 4px #a855f7,0 0 8px #a855f7,0 0 12px #a855f7,0 0 16px #a855f7,inset 0 0 4px #a855f7}}.neon-button{background:#0009;border:2px solid currentColor;border-radius:16px;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.25,.46,.45,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.neon-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.neon-button:hover:before{left:100%}.neon-github{color:#58a6ff;animation:neon-pulse-github 2s ease-in-out infinite}.neon-website{color:#22c55e;animation:neon-pulse-website 2.2s ease-in-out infinite}.neon-linkedin{color:#0ea5e9;animation:neon-pulse-linkedin 1.8s ease-in-out infinite}.neon-email{color:#f97316;animation:neon-pulse-email 2.5s ease-in-out infinite}.neon-portfolio{color:#a855f7;animation:neon-pulse-portfolio 2.1s ease-in-out infinite}.neon-button:hover{transform:translateY(-5px) scale(1.08);animation-duration:.5s;box-shadow:0 10px 30px #0000004d}.neon-icon{filter:drop-shadow(0 0 2px currentColor) drop-shadow(0 0 4px currentColor);transition:all .3s ease}.neon-button:hover .neon-icon{filter:drop-shadow(0 0 3px currentColor) drop-shadow(0 0 6px currentColor) drop-shadow(0 0 8px currentColor);transform:scale(1.1)}.neon-text{text-shadow:0 0 3px currentColor,0 0 6px currentColor,0 0 9px currentColor;font-weight:700;letter-spacing:1.2px;transition:all .4s cubic-bezier(.25,.46,.45,.94);text-align:center}.neon-button:hover .neon-text{text-shadow:0 0 4px currentColor,0 0 8px currentColor,0 0 12px currentColor,0 0 16px currentColor;transform:scale(1.05)}@keyframes metallic-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes metallic-glow-blue{0%,to{box-shadow:0 0 15px #3b82f699,0 0 25px #3b82f666,0 0 35px #3b82f64d,inset 0 0 15px #3b82f633}50%{box-shadow:0 0 20px #3b82f6cc,0 0 30px #3b82f699,0 0 40px #3b82f666,inset 0 0 20px #3b82f64d}}@keyframes metallic-glow-green{0%,to{box-shadow:0 0 15px #22c55e99,0 0 25px #22c55e66,0 0 35px #22c55e4d,inset 0 0 15px #22c55e33}50%{box-shadow:0 0 20px #22c55ecc,0 0 30px #22c55e99,0 0 40px #22c55e66,inset 0 0 20px #22c55e4d}}@keyframes metallic-glow-cyan{0%,to{box-shadow:0 0 15px #06b6d499,0 0 25px #06b6d466,0 0 35px #06b6d44d,inset 0 0 15px #06b6d433}50%{box-shadow:0 0 20px #06b6d4cc,0 0 30px #06b6d499,0 0 40px #06b6d466,inset 0 0 20px #06b6d44d}}@keyframes metallic-glow-orange{0%,to{box-shadow:0 0 15px #f9731699,0 0 25px #f9731666,0 0 35px #f973164d,inset 0 0 15px #f9731633}50%{box-shadow:0 0 20px #f97316cc,0 0 30px #f9731699,0 0 40px #f9731666,inset 0 0 20px #f973164d}}@keyframes metallic-glow-purple{0%,to{box-shadow:0 0 15px #a855f799,0 0 25px #a855f766,0 0 35px #a855f74d,inset 0 0 15px #a855f733}50%{box-shadow:0 0 20px #a855f7cc,0 0 30px #a855f799,0 0 40px #a855f766,inset 0 0 20px #a855f74d}}@keyframes metallic-glow-instagram{0%,to{box-shadow:0 0 15px #e1306c99,0 0 25px #f5656566,0 0 35px #fb923c4d,inset 0 0 15px #e1306c33}50%{box-shadow:0 0 20px #e1306ccc,0 0 30px #f5656599,0 0 40px #fb923c66,inset 0 0 20px #e1306c4d}}.metallic-neon-button{background:#000c;border:2px solid transparent;position:relative;transition:all .4s cubic-bezier(.25,.46,.45,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.metallic-neon-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),rgba(255,255,255,.25),rgba(255,255,255,.15),transparent);animation:metallic-shimmer 3s linear infinite;border-radius:inherit}.metallic-neon-button:hover:before{animation-duration:1s}.metallic-neon-blue{background:linear-gradient(135deg,#1e3a8a99,#3b82f666,#2563ebb3,#3b82f666,#1e3a8a99);border-color:#3b82f6cc;animation:metallic-glow-blue 3s ease-in-out infinite}.metallic-neon-green{background:linear-gradient(135deg,#15803d99,#22c55e66,#16a34ab3,#22c55e66,#15803d99);border-color:#22c55ecc;animation:metallic-glow-green 3.2s ease-in-out infinite}.metallic-neon-cyan{background:linear-gradient(135deg,#0891b299,#06b6d466,#0ea5e9b3,#06b6d466,#0891b299);border-color:#06b6d4cc;animation:metallic-glow-cyan 2.8s ease-in-out infinite}.metallic-neon-orange{background:linear-gradient(135deg,#c2410c99,#f9731666,#ea580cb3,#f9731666,#c2410c99);border-color:#f97316cc;animation:metallic-glow-orange 3.5s ease-in-out infinite}.metallic-neon-purple{background:linear-gradient(135deg,#833ab499,#e1306c80,#f5656599,#fb923c80,#833ab499);border-color:#e1306ccc;animation:metallic-glow-instagram 2.5s ease-in-out infinite}.metallic-neon-icon{filter:drop-shadow(0 0 5px currentColor) drop-shadow(0 0 10px currentColor);transition:all .4s cubic-bezier(.25,.46,.45,.94)}.metallic-neon-text{text-shadow:0 0 5px currentColor,0 0 10px currentColor,0 0 15px currentColor;transition:all .4s cubic-bezier(.25,.46,.45,.94);letter-spacing:.5px}.metallic-neon-button:hover{transform:translateY(-3px) scale(1.05);filter:brightness(1.2)}.metallic-neon-button:hover .metallic-neon-icon{filter:drop-shadow(0 0 8px currentColor) drop-shadow(0 0 15px currentColor) drop-shadow(0 0 20px currentColor);transform:scale(1.1)}.metallic-neon-button:hover .metallic-neon-text{text-shadow:0 0 8px currentColor,0 0 15px currentColor,0 0 20px currentColor,0 0 25px currentColor;transform:scale(1.05)}@keyframes camembert-glow{0%,to{box-shadow:0 0 10px currentColor,0 0 20px currentColor,0 0 30px currentColor}50%{box-shadow:0 0 15px currentColor,0 0 25px currentColor,0 0 35px currentColor}}.camembert-container{animation:fadeIn 1s ease-out}.camembert-button{animation:fadeIn .8s ease-out both}@keyframes detail-glow-blue{0%,to{box-shadow:0 0 5px #3b82f64d,0 0 15px #3b82f633,0 0 25px #3b82f61a,inset 0 0 10px #3b82f61a}50%{box-shadow:0 0 8px #3b82f666,0 0 20px #3b82f64d,0 0 35px #3b82f633,inset 0 0 15px #3b82f633}}@keyframes detail-glow-emerald{0%,to{box-shadow:0 0 5px #10b9814d,0 0 15px #10b98133,0 0 25px #10b9811a,inset 0 0 10px #10b9811a}50%{box-shadow:0 0 8px #10b98166,0 0 20px #10b9814d,0 0 35px #10b98133,inset 0 0 15px #10b98133}}@keyframes detail-glow-purple{0%,to{box-shadow:0 0 5px #9333ea4d,0 0 15px #9333ea33,0 0 25px #9333ea1a,inset 0 0 10px #9333ea1a}50%{box-shadow:0 0 8px #9333ea66,0 0 20px #9333ea4d,0 0 35px #9333ea33,inset 0 0 15px #9333ea33}}@keyframes detail-glow-rose{0%,to{box-shadow:0 0 5px #f43f5e4d,0 0 15px #f43f5e33,0 0 25px #f43f5e1a,inset 0 0 10px #f43f5e1a}50%{box-shadow:0 0 8px #f43f5e66,0 0 20px #f43f5e4d,0 0 35px #f43f5e33,inset 0 0 15px #f43f5e33}}@keyframes detail-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes detail-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes detail-icon-pulse{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.1);filter:brightness(1.2)}}@keyframes detail-glow-pulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.3);opacity:1}}.detail-card{background:#0009;border-radius:20px;padding:16px;display:flex;align-items:center;gap:16px;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.25,.46,.45,.94);border:2px solid transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-height:70px}.detail-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:detail-shimmer 3s linear infinite;opacity:0;transition:opacity .3s ease}.detail-card:hover:before{opacity:1}.detail-card:hover{transform:translateY(-5px) scale(1.03)}.detail-icon-container{width:45px;height:45px;border-radius:15px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.detail-card:hover .detail-icon-container{animation:detail-icon-pulse .6s ease-in-out}.detail-text{color:#fff;font-weight:600;font-size:15px;flex-grow:1;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.detail-card:hover .detail-text{transform:translate(8px)}.detail-glow{width:8px;height:8px;border-radius:50%;position:relative;flex-shrink:0;transition:all .4s cubic-bezier(.25,.46,.45,.94)}.detail-card:hover .detail-glow{animation:detail-glow-pulse .8s ease-in-out}.detail-blue{border-color:#3b82f64d;animation:detail-glow-blue 4s ease-in-out infinite}.detail-blue .detail-icon-container{background:#3b82f633;border:2px solid rgba(59,130,246,.4)}.detail-blue .detail-glow{background:#3b82f6cc;box-shadow:0 0 10px #3b82f6cc,0 0 20px #3b82f699}.detail-blue .detail-text{text-shadow:0 0 5px rgba(59,130,246,.5)}.detail-emerald{border-color:#10b9814d;animation:detail-glow-emerald 4.5s ease-in-out infinite}.detail-emerald .detail-icon-container{background:#10b98133;border:2px solid rgba(16,185,129,.4)}.detail-emerald .detail-glow{background:#10b981cc;box-shadow:0 0 10px #10b981cc,0 0 20px #10b98199}.detail-emerald .detail-text{text-shadow:0 0 5px rgba(16,185,129,.5)}.detail-purple{border-color:#9333ea4d;animation:detail-glow-purple 3.8s ease-in-out infinite}.detail-purple .detail-icon-container{background:#9333ea33;border:2px solid rgba(147,51,234,.4)}.detail-purple .detail-glow{background:#9333eacc;box-shadow:0 0 10px #9333eacc,0 0 20px #9333ea99}.detail-purple .detail-text{text-shadow:0 0 5px rgba(147,51,234,.5)}.detail-rose{border-color:#f43f5e4d;animation:detail-glow-rose 5s ease-in-out infinite}.detail-rose .detail-icon-container{background:#f43f5e33;border:2px solid rgba(244,63,94,.4)}.detail-rose .detail-glow{background:#f43f5ecc;box-shadow:0 0 10px #f43f5ecc,0 0 20px #f43f5e99}.detail-rose .detail-text{text-shadow:0 0 5px rgba(244,63,94,.5)}@keyframes rgbFrance{0%,to{box-shadow:0 0 5px #0055a433,0 0 10px #ffffff1a,0 0 15px #ef413533}33%{box-shadow:0 0 8px #0055a44d,0 0 12px #fff3,0 0 18px #ef41351a}66%{box-shadow:0 0 6px #0055a41a,0 0 11px #ffffff4d,0 0 16px #ef41354d}}@keyframes rgbEngland{0%,to{box-shadow:0 0 5px #ce112633,0 0 10px #ffffff26,0 0 15px #01216926}50%{box-shadow:0 0 8px #ce11264d,0 0 12px #ffffff40,0 0 18px #01216940}}@keyframes rgbSpain{0%,to{box-shadow:0 0 5px #c60b1e33,0 0 10px #ffc40026,0 0 15px #c60b1e26}50%{box-shadow:0 0 8px #c60b1e4d,0 0 12px #ffc40040,0 0 18px #c60b1e40}}.metallic-france{background:linear-gradient(135deg,#0055a499,#ffffff80,#ef413599 66%,#0055a480);border:1px solid rgba(0,85,164,.2);animation:rgbFrance 4s ease-in-out infinite}.metallic-england{background:linear-gradient(135deg,#ce112699,#ffffff80,#01216999,#ffffff80,#ce112699);border:1px solid rgba(206,17,38,.2);animation:rgbEngland 4.5s ease-in-out infinite}.metallic-spain{background:linear-gradient(135deg,#c60b1e99,#ffc40080,#c60b1eb3,#ffc40080,#c60b1e99);border:1px solid rgba(198,11,30,.2);animation:rgbSpain 4.8s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes twinkleSlow{0%,to{opacity:.2}50%{opacity:.8}}@keyframes twinkleFast{0%,to{opacity:.4}50%{opacity:1}}.star{position:absolute;background:#fff;border-radius:50%;pointer-events:none}.star-1{width:1px;height:1px;animation:twinkle 3s ease-in-out infinite}.star-2{width:2px;height:2px;animation:twinkleSlow 4s ease-in-out infinite}.star-3{width:1.5px;height:1.5px;animation:twinkleFast 2s ease-in-out infinite}@keyframes shootingStar{0%{transform:translate(-100px) translateY(100px) rotate(-45deg);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translate(300px) translateY(-300px) rotate(-45deg);opacity:0}}@keyframes shootingStarReverse{0%{transform:translate(100px) translateY(-100px) rotate(135deg);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translate(-300px) translateY(300px) rotate(135deg);opacity:0}}@keyframes shootingStarSlow{0%{transform:translate(-150px) translateY(50px) rotate(-30deg);opacity:0}15%{opacity:1}85%{opacity:1}to{transform:translate(400px) translateY(-200px) rotate(-30deg);opacity:0}}.shooting-star{position:absolute;width:2px;height:2px;background:linear-gradient(45deg,#fff,#87ceeb,#fff);border-radius:50%;pointer-events:none;box-shadow:0 0 6px #fff,0 0 12px #87ceeb}.shooting-star:before{content:"";position:absolute;top:50%;left:50%;width:50px;height:1px;background:linear-gradient(to right,#fff0,#fffc,#87ceeb99,#fff0);transform:translate(-50%,-50%);border-radius:1px}.shooting-star-1{animation:shootingStar 3s linear infinite;animation-delay:0s}.shooting-star-2{animation:shootingStarReverse 4s linear infinite;animation-delay:1.5s}.shooting-star-3{animation:shootingStarSlow 5s linear infinite;animation-delay:3s}.shooting-star-4{animation:shootingStar 3.5s linear infinite;animation-delay:2s}.shooting-star-5{animation:shootingStarReverse 4.5s linear infinite;animation-delay:4s}.star-field{position:absolute;width:100%;height:100%;pointer-events:none}.star-tiny{position:absolute;background:#fff;border-radius:50%;width:.5px;height:.5px;animation:twinkle 4s ease-in-out infinite}.star-small{position:absolute;background:#fff;border-radius:50%;width:1px;height:1px;animation:twinkleSlow 5s ease-in-out infinite}.star-medium{position:absolute;background:#fff;border-radius:50%;width:1.5px;height:1.5px;animation:twinkleFast 3s ease-in-out infinite;box-shadow:0 0 3px #fffc}@keyframes neon-rainbow{0%{color:#ff0080;filter:drop-shadow(0 0 5px #ff0080) drop-shadow(0 0 10px #ff0080) drop-shadow(0 0 15px #ff0080)}16%{color:#ff8000;filter:drop-shadow(0 0 5px #ff8000) drop-shadow(0 0 10px #ff8000) drop-shadow(0 0 15px #ff8000)}33%{color:#ff0;filter:drop-shadow(0 0 5px #ffff00) drop-shadow(0 0 10px #ffff00) drop-shadow(0 0 15px #ffff00)}50%{color:#0f0;filter:drop-shadow(0 0 5px #00ff00) drop-shadow(0 0 10px #00ff00) drop-shadow(0 0 15px #00ff00)}66%{color:#0080ff;filter:drop-shadow(0 0 5px #0080ff) drop-shadow(0 0 10px #0080ff) drop-shadow(0 0 15px #0080ff)}83%{color:#8000ff;filter:drop-shadow(0 0 5px #8000ff) drop-shadow(0 0 10px #8000ff) drop-shadow(0 0 15px #8000ff)}to{color:#ff0080;filter:drop-shadow(0 0 5px #ff0080) drop-shadow(0 0 10px #ff0080) drop-shadow(0 0 15px #ff0080)}}@keyframes neon-pulse-scale{0%,to{transform:scale(1) translateY(0)}25%{transform:scale(1.1) translateY(-2px)}50%{transform:scale(1.2) translateY(-4px)}75%{transform:scale(1.1) translateY(-2px)}}.neon-arrow{animation:neon-rainbow 3s linear infinite,neon-pulse-scale 2s ease-in-out infinite,bounce 2s infinite;transform-origin:center;transition:all .3s ease}.neon-arrow:hover{animation-duration:1s,.5s,.5s;transform:scale(1.3)}@keyframes coding-pulse{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 0 5px currentColor)}25%{transform:scale(1.1) rotate(-2deg);filter:drop-shadow(0 0 8px currentColor) drop-shadow(0 0 12px currentColor)}50%{transform:scale(1.15) rotate(0);filter:drop-shadow(0 0 10px currentColor) drop-shadow(0 0 15px currentColor)}75%{transform:scale(1.1) rotate(2deg);filter:drop-shadow(0 0 8px currentColor) drop-shadow(0 0 12px currentColor)}}@keyframes gaming-bounce{0%,to{transform:scale(1) translateY(0);filter:drop-shadow(0 0 5px currentColor)}25%{transform:scale(1.05) translateY(-2px);filter:drop-shadow(0 0 8px currentColor) drop-shadow(0 0 12px currentColor)}50%{transform:scale(1.1) translateY(-4px);filter:drop-shadow(0 0 10px currentColor) drop-shadow(0 0 15px currentColor)}75%{transform:scale(1.05) translateY(-2px);filter:drop-shadow(0 0 8px currentColor) drop-shadow(0 0 12px currentColor)}}@keyframes history-flip{0%,to{transform:scale(1) rotateY(0);filter:drop-shadow(0 0 5px currentColor)}25%{transform:scale(1.05) rotateY(15deg);filter:drop-shadow(0 0 8px currentColor) drop-shadow(0 0 12px currentColor)}50%{transform:scale(1.1) rotateY(0);filter:drop-shadow(0 0 10px currentColor) drop-shadow(0 0 15px currentColor)}75%{transform:scale(1.05) rotateY(-15deg);filter:drop-shadow(0 0 8px currentColor) drop-shadow(0 0 12px currentColor)}}.group:hover .interest-coding-icon{animation:coding-pulse .8s ease-in-out}.group:hover .interest-gaming-icon{animation:gaming-bounce .6s ease-in-out}.group:hover .interest-history-icon{animation:history-flip .7s ease-in-out}.interest-coding-icon{filter:drop-shadow(0 0 3px rgba(59,130,246,.5));transition:all .3s ease}.interest-gaming-icon{filter:drop-shadow(0 0 3px rgba(168,85,247,.5));transition:all .3s ease}.interest-history-icon{filter:drop-shadow(0 0 3px rgba(249,115,22,.5));transition:all .3s ease}@keyframes construction-slide{0%{transform:translate(-100%);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translate(100%);opacity:0}}@keyframes construction-pulse{0%,to{box-shadow:0 0 10px #ffc10766,0 0 20px #ffc1074d,0 0 30px #ffc10733,inset 0 0 10px #ffc1071a}50%{box-shadow:0 0 15px #ffc10799,0 0 25px #ffc10766,0 0 35px #ffc1074d,inset 0 0 15px #ffc10733}}@keyframes construction-glow-move{0%{left:-100%;opacity:0}50%{opacity:1}to{left:100%;opacity:0}}@keyframes construction-text-flash{0%,to{color:#ffc107;text-shadow:0 0 5px #ffc107,0 0 10px #ffc107,0 0 15px #ffc107}25%{color:#ff9800;text-shadow:0 0 8px #ff9800,0 0 15px #ff9800,0 0 20px #ff9800}50%{color:#f44336;text-shadow:0 0 10px #f44336,0 0 20px #f44336,0 0 25px #f44336}75%{color:#ff9800;text-shadow:0 0 8px #ff9800,0 0 15px #ff9800,0 0 20px #ff9800}}@keyframes construction-icon-bounce{0%,to{transform:translateY(0) rotate(0) scale(1)}25%{transform:translateY(-5px) rotate(-5deg) scale(1.1)}50%{transform:translateY(-8px) rotate(0) scale(1.2)}75%{transform:translateY(-5px) rotate(5deg) scale(1.1)}}.construction-banner{background:linear-gradient(135deg,#ffc1071a,#ff980026,#f443361a,#ff980026,#ffc1071a);border:2px solid rgba(255,193,7,.3);border-radius:16px;padding:16px 24px;position:relative;overflow:hidden;animation:construction-pulse 3s ease-in-out infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-height:80px;display:flex;align-items:center;justify-content:center}.construction-banner:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(255,193,7,.1) 10px,rgba(255,193,7,.1) 20px);animation:construction-slide 4s linear infinite;pointer-events:none}.construction-content{display:flex;align-items:center;gap:16px;position:relative;z-index:2}.construction-text{font-size:18px;font-weight:700;letter-spacing:2px;animation:construction-text-flash 2s ease-in-out infinite;text-align:center;font-family:Courier New,monospace}.construction-icon{font-size:24px;animation:construction-icon-bounce 2.5s ease-in-out infinite;filter:drop-shadow(0 0 5px rgba(255,193,7,.8))}.construction-icon:first-child{animation-delay:0s}.construction-icon:last-child{animation-delay:.5s}.construction-glow{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,193,7,.3),rgba(255,152,0,.4),rgba(255,193,7,.3),transparent);animation:construction-glow-move 3s linear infinite;border-radius:inherit}.construction-banner:hover{transform:translateY(-2px) scale(1.02);transition:all .3s cubic-bezier(.25,.46,.45,.94)}.construction-banner:hover .construction-text{animation-duration:.5s}.construction-banner:hover .construction-icon{animation-duration:.8s}@keyframes construction-slide-small{0%{transform:translate(-100%);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translate(100%);opacity:0}}@keyframes construction-pulse-small{0%,to{box-shadow:0 0 5px #ffc10766,0 0 10px #ffc1074d,0 0 15px #ffc10733}50%{box-shadow:0 0 8px #ffc10799,0 0 15px #ffc10766,0 0 20px #ffc1074d}}@keyframes construction-glow-move-small{0%{left:-100%;opacity:0}50%{opacity:1}to{left:100%;opacity:0}}@keyframes construction-text-flash-small{0%,to{color:#ffc107;text-shadow:0 0 3px #ffc107,0 0 6px #ffc107}25%{color:#ff9800;text-shadow:0 0 4px #ff9800,0 0 8px #ff9800}50%{color:#f44336;text-shadow:0 0 5px #f44336,0 0 10px #f44336}75%{color:#ff9800;text-shadow:0 0 4px #ff9800,0 0 8px #ff9800}}@keyframes construction-icon-bounce-small{0%,to{transform:translateY(0) rotate(0) scale(1)}25%{transform:translateY(-2px) rotate(-3deg) scale(1.05)}50%{transform:translateY(-3px) rotate(0) scale(1.1)}75%{transform:translateY(-2px) rotate(3deg) scale(1.05)}}.construction-banner-small{position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;overflow:hidden;animation:construction-pulse-small 1.5s ease-in-out infinite;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:5}.construction-overlay-filter{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#000000d9,#141414e6,#000000f2,#141414e6,#000000d9);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:inherit}.construction-banner-small:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(45deg,transparent,transparent 3px,rgba(255,193,7,.4) 3px,rgba(255,193,7,.4) 6px);animation:construction-slide-small 2s linear infinite;pointer-events:none}.construction-content-small{display:flex;flex-direction:column;gap:2px;position:relative;z-index:3;justify-content:center;align-items:center;height:100%}.construction-text-small{font-size:9px;font-weight:700;letter-spacing:1px;animation:construction-text-flash-small 1.2s ease-in-out infinite;text-align:center;font-family:Courier New,monospace;text-shadow:0 0 5px rgba(255,193,7,.8),0 0 10px rgba(255,193,7,.6),0 1px 3px rgba(0,0,0,.9);line-height:1}.construction-glow-small{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,193,7,.5),rgba(255,152,0,.6),rgba(255,193,7,.5),transparent);animation:construction-glow-move-small 2s linear infinite;border-radius:inherit;z-index:2}@media (max-width: 640px){.construction-text-small{font-size:8px;letter-spacing:.8px}}@media (max-width: 640px){.construction-text{font-size:16px;letter-spacing:1px}.construction-icon{font-size:20px}.construction-content{gap:12px}}@keyframes carousel-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes carousel-slide-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes carousel-glow{0%,to{box-shadow:0 0 5px #3b82f633}50%{box-shadow:0 0 15px #3b82f666}}.animate-carousel-fade-in{animation:carousel-fade-in .6s ease-out}.animate-carousel-slide-in{animation:carousel-slide-in .8s ease-out}.animate-carousel-glow{animation:carousel-glow 2s ease-in-out infinite}@media (max-width: 640px){.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}}@media (min-width: 641px) and (max-width: 1023px){.line-clamp-2,.line-clamp-3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}@media (min-width: 1024px){.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}}.carousel-container{scroll-behavior:smooth}.project-card-image{will-change:transform;backface-visibility:hidden}.pagination-dot{transition:all .3s cubic-bezier(.4,0,.2,1)}.pagination-dot:hover{transform:scale(1.2)}.pagination-dot.active{box-shadow:0 0 8px #3b82f699}.carousel-nav-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s cubic-bezier(.4,0,.2,1)}.carousel-nav-button:hover:not(:disabled){transform:scale(1.1);box-shadow:0 4px 12px #0000004d}.carousel-nav-button:disabled{opacity:.3;cursor:not-allowed}@media (hover: none) and (pointer: coarse){.project-card:hover,.carousel-nav-button:hover{transform:none}}.carousel-nav-button:focus-visible,.pagination-dot:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.project-image-loading{background:linear-gradient(90deg,#374151 25%,#4b5563,#374151 75%);background-size:200% 100%;animation:loading-shimmer 2s infinite}@keyframes loading-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.hover\:-translate-y-1:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:-translate-y-2:hover{--tw-translate-y: -.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.02\]:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:transform:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-gray-500\/50:hover{border-color:#6b728080}.hover\:border-gray-600\/50:hover{border-color:#4b556380}.hover\:border-gray-700\/50:hover{border-color:#37415180}.hover\:bg-blue-500:hover{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-500:hover{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:text-blue-300:hover{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.hover\:text-gray-300:hover{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.sm\:mb-2{margin-bottom:.5rem}.sm\:mb-8{margin-bottom:2rem}.sm\:inline{display:inline}.sm\:h-3{height:.75rem}.sm\:h-32{height:8rem}.sm\:h-40{height:10rem}.sm\:h-7{height:1.75rem}.sm\:min-h-\[100px\]{min-height:100px}.sm\:w-3{width:.75rem}.sm\:w-32{width:8rem}.sm\:w-7{width:1.75rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:p-4{padding:1rem}.sm\:p-6{padding:1.5rem}.sm\:p-8{padding:2rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width: 768px){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:p-8{padding:2rem}}
