/*! tailwindcss v4.1.13 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-yellow-300:oklch(90.5% .182 98.111);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-500:oklch(79.5% .184 86.047);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-purple-500:oklch(62.7% .265 303.9);--color-pink-500:oklch(65.6% .241 354.308);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-gray-950:oklch(13% .028 261.692);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-in:cubic-bezier(.4,0,1,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animate-bounce:bounce 1s infinite;--blur-sm:8px;--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing)*0)}.-top-2{top:calc(var(--spacing)*-2)}.top-0{top:calc(var(--spacing)*0)}.top-1{top:calc(var(--spacing)*1)}.top-2{top:calc(var(--spacing)*2)}.top-4{top:calc(var(--spacing)*4)}.top-20{top:calc(var(--spacing)*20)}.top-23{top:calc(var(--spacing)*23)}.-right-2{right:calc(var(--spacing)*-2)}.right-4{right:calc(var(--spacing)*4)}.bottom-0{bottom:calc(var(--spacing)*0)}.left-1{left:calc(var(--spacing)*1)}.left-3{left:calc(var(--spacing)*3)}.left-4{left:calc(var(--spacing)*4)}.z-0{z-index:0}.z-1{z-index:1}.z-10{z-index:10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.mx-4{margin-inline:calc(var(--spacing)*4)}.-mt-2{margin-top:calc(var(--spacing)*-2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.ml-0\.5{margin-left:calc(var(--spacing)*.5)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-10{margin-left:calc(var(--spacing)*10)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.inline-flex{display:inline-flex}.h-0\.5{height:calc(var(--spacing)*.5)}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-8{height:calc(var(--spacing)*8)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-full{height:100%}.max-h-\[70vh\]{max-height:70vh}.max-h-\[80vh\]{max-height:80vh}.min-h-\[4rem\]{min-height:4rem}.w-0\.5{width:calc(var(--spacing)*.5)}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-2{width:calc(var(--spacing)*2)}.w-3{width:calc(var(--spacing)*3)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-80{width:calc(var(--spacing)*80)}.w-\[min\(720px\,95\%\)\]{width:min(720px,95%)}.w-full{width:100%}.max-w-\[1200px\]{max-width:1200px}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.translate-x-6{--tw-translate-x:calc(var(--spacing)*6);translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-105{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-110{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-150{--tw-scale-x:150%;--tw-scale-y:150%;--tw-scale-z:150%;scale:var(--tw-scale-x)var(--tw-scale-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-bounce{animation:var(--animate-bounce)}.animate-ping{animation:var(--animate-ping)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.resize{resize:both}.appearance-none{appearance:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-rows-\[auto\,1fr\]{grid-template-rows:auto,1fr}.flex-col{flex-direction:column}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-gray-800{border-color:var(--color-gray-800)}.border-zinc-200{border-color:var(--color-zinc-200)}.border-zinc-600{border-color:var(--color-zinc-600)}.border-zinc-700{border-color:var(--color-zinc-700)}.border-zinc-800{border-color:var(--color-zinc-800)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-amber-500\/30{background-color:#f99c004d}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/30{background-color:color-mix(in oklab,var(--color-amber-500)30%,transparent)}}.bg-amber-500\/50{background-color:#f99c0080}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/50{background-color:color-mix(in oklab,var(--color-amber-500)50%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-blue-200{background-color:var(--color-blue-200)}.bg-blue-400{background-color:var(--color-blue-400)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-gray-300{background-color:var(--color-gray-300)}.bg-gray-400{background-color:var(--color-gray-400)}.bg-gray-500{background-color:var(--color-gray-500)}.bg-gray-600{background-color:var(--color-gray-600)}.bg-gray-700{background-color:var(--color-gray-700)}.bg-gray-900{background-color:var(--color-gray-900)}.bg-gray-950{background-color:var(--color-gray-950)}.bg-green-500{background-color:var(--color-green-500)}.bg-red-400{background-color:var(--color-red-400)}.bg-red-500{background-color:var(--color-red-500)}.bg-white{background-color:var(--color-white)}.bg-yellow-300{background-color:var(--color-yellow-300)}.bg-yellow-400{background-color:var(--color-yellow-400)}.bg-yellow-500{background-color:var(--color-yellow-500)}.bg-zinc-600{background-color:var(--color-zinc-600)}.bg-zinc-700{background-color:var(--color-zinc-700)}.bg-zinc-800{background-color:var(--color-zinc-800)}.bg-zinc-900{background-color:var(--color-zinc-900)}.bg-zinc-900\/40{background-color:#18181b66}@supports (color:color-mix(in lab,red,red)){.bg-zinc-900\/40{background-color:color-mix(in oklab,var(--color-zinc-900)40%,transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-bl{--tw-gradient-position:to bottom left in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-amber-400{--tw-gradient-from:var(--color-amber-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-gray-900{--tw-gradient-from:var(--color-gray-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-green-500{--tw-gradient-from:var(--color-green-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-purple-500{--tw-gradient-from:var(--color-purple-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-yellow-400{--tw-gradient-from:var(--color-yellow-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.via-amber-500{--tw-gradient-via:var(--color-amber-500);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-blue-500{--tw-gradient-via:var(--color-blue-500);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-gray-950{--tw-gradient-via:var(--color-gray-950);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-amber-600{--tw-gradient-to:var(--color-amber-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-black{--tw-gradient-to:var(--color-black);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-green-300{--tw-gradient-to:var(--color-green-300);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-pink-500{--tw-gradient-to:var(--color-pink-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-purple-500{--tw-gradient-to:var(--color-purple-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.p-\[1px\]{padding:1px}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-1{padding-block:calc(var(--spacing)*1)}.py-3{padding-block:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-400\/80{color:#fcbb00cc}@supports (color:color-mix(in lab,red,red)){.text-amber-400\/80{color:color-mix(in oklab,var(--color-amber-400)80%,transparent)}}.text-black{color:var(--color-black)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-green-400{color:var(--color-green-400)}.text-white{color:var(--color-white)}.text-yellow-400{color:var(--color-yellow-400)}.text-zinc-600{color:var(--color-zinc-600)}.capitalize{text-transform:capitalize}.opacity-0{opacity:0}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.opacity-100{opacity:1}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-amber-500\/20{--tw-shadow-color:#f99c0033}@supports (color:color-mix(in lab,red,red)){.shadow-amber-500\/20{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-amber-500)20%,transparent)var(--tw-shadow-alpha),transparent)}}.blur-sm{--tw-blur:blur(var(--blur-sm));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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}@media (hover:hover){.group-hover\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\:scale-150:is(:where(.group):hover *){--tw-scale-x:150%;--tw-scale-y:150%;--tw-scale-z:150%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\:bg-gray-950\/50:is(:where(.group):hover *){background-color:#03071280}@supports (color:color-mix(in lab,red,red)){.group-hover\:bg-gray-950\/50:is(:where(.group):hover *){background-color:color-mix(in oklab,var(--color-gray-950)50%,transparent)}}.group-hover\:opacity-40:is(:where(.group):hover *){opacity:.4}.group-hover\:blur-md:is(:where(.group):hover *){--tw-blur:blur(var(--blur-md));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,)}.group-hover\:delay-100:is(:where(.group):hover *){transition-delay:.1s}.group-hover\:delay-200:is(:where(.group):hover *){transition-delay:.2s}.hover\:border-yellow-400:hover{border-color:var(--color-yellow-400)}.hover\:bg-green-400:hover{background-color:var(--color-green-400)}.hover\:bg-zinc-100:hover{background-color:var(--color-zinc-100)}.hover\:bg-zinc-600:hover{background-color:var(--color-zinc-600)}.hover\:bg-zinc-700:hover{background-color:var(--color-zinc-700)}.hover\:text-white:hover{color:var(--color-white)}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media (prefers-color-scheme:dark){.dark\:border-zinc-700{border-color:var(--color-zinc-700)}.dark\:bg-zinc-900{background-color:var(--color-zinc-900)}.dark\:text-zinc-400{color:var(--color-zinc-400)}@media (hover:hover){.dark\:hover\:bg-zinc-800:hover{background-color:var(--color-zinc-800)}}}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}:root{--bg-primary: #0a0a0a;--bg-secondary: #111111;--bg-card: rgba(20, 20, 20, .8);--border-color: #2a2a2a;--border-hover: #facc15;--text-primary: #ffffff;--text-secondary: #9ca3af;--text-muted: #6b7280;--accent-yellow: #facc15;--accent-red: #ef4444;--accent-blue: #3b82f6;--accent-purple: #a855f7;--accent-green: #22c55e;--accent-teal: #14b8a6}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:hidden;cursor:none;position:relative}.grid-background{position:fixed;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:50px 50px;pointer-events:none;z-index:0}.custom-cursor{width:8px;height:8px;background:var(--accent-yellow);border-radius:50%;position:fixed;pointer-events:none;z-index:10000;transition:transform .1s ease;mix-blend-mode:difference}.cursor-follower{width:30px;height:30px;border:1px solid rgba(250,204,21,.3);border-radius:50%;position:fixed;pointer-events:none;z-index:9999;transition:transform .2s ease}.portfolio-container{max-width:1200px;margin:0 auto;padding:2rem;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(80px,auto);gap:1rem;position:relative;z-index:1}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden;transform-style:preserve-3d;perspective:1000px}.card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#ffffff0d,#ffffff05);border-radius:12px;pointer-events:none;opacity:0;transition:opacity .3s ease}.card:hover{border-color:var(--accent-yellow);transform:translateY(-5px) rotateX(2deg) rotateY(1deg);box-shadow:0 20px 40px #facc151a,0 10px 20px #0003,inset 0 1px #ffffff1a}.card:hover:before{opacity:1}.card-magnetic{transition:all .2s cubic-bezier(.25,.46,.45,.94)}.card-glass{background:#14141466;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff1a,inset 0 -1px #ffffff0d}.card-depth:after{content:"";position:absolute;inset:4px;background:linear-gradient(135deg,rgba(255,255,255,.03) 0%,transparent 50%,rgba(0,0,0,.03) 100%);border-radius:8px;pointer-events:none;opacity:0;transition:opacity .3s ease}.card-depth:hover:after{opacity:1}.card-hero{grid-column:span 3;grid-row:span 4;display:flex;justify-content:space-between;align-items:flex-start;padding:2.5rem;position:relative;overflow:visible}.hero-content{flex:1;max-width:60%}.welcome-text{color:var(--text-muted);font-size:.875rem;font-weight:300;display:block;margin-bottom:2rem}.hero-text{margin-bottom:2rem}.hero-text p{font-size:1rem;line-height:1.6;color:var(--text-secondary);margin-bottom:1rem}.hero-text strong{color:var(--text-primary);font-weight:600}.social-buttons{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.social-btn{width:48px;height:48px;border:1px solid var(--accent-yellow);background:transparent;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--text-primary);text-decoration:none;transition:all .3s ease;cursor:none}.social-btn:hover{background:var(--accent-yellow);color:var(--bg-primary);transform:translateY(-2px)}.cta-btn{padding:.75rem 1.5rem;background:transparent;border:1px solid var(--accent-yellow);color:var(--text-primary);border-radius:8px;font-weight:600;font-size:.9rem;cursor:none;transition:all .3s ease;font-family:inherit}.cta-btn:hover{background:var(--accent-yellow);color:var(--bg-primary);transform:translateY(-2px)}.avatar-container{position:absolute;right:2rem;bottom:2rem;width:280px;height:320px}.avatar{width:100%;height:100%;position:relative;animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-10px) rotate(5deg)}}.card-about{grid-column:span 1;grid-row:span 4;font-size:.875rem}.card-about h2{font-size:1.25rem;margin-bottom:1rem;font-weight:600}.card-about p{color:var(--text-secondary);line-height:1.6;margin-bottom:1rem}.tech-list{list-style:none;padding-left:1rem;margin:1rem 0}.tech-list li{color:var(--text-secondary);margin-bottom:.5rem;position:relative}.tech-list li:before{content:"•";color:var(--accent-yellow);position:absolute;left:-1rem}.card-contact{grid-column:span 1;grid-row:span 3}.card-contact h2{font-size:1.125rem;margin-bottom:1.5rem;font-weight:600}.contact-section,.social-section{margin-bottom:1.5rem}.section-label{display:block;color:var(--text-muted);font-size:.75rem;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.contact-email{display:block;color:var(--text-primary);text-decoration:none;font-size:.875rem;margin-bottom:.25rem;transition:color .3s ease}.contact-email:hover{color:var(--accent-yellow)}.contact-location{display:block;color:var(--text-secondary);font-size:.875rem;font-style:italic}.social-list{list-style:none}.social-list li{margin-bottom:.5rem}.social-list a{color:var(--text-primary);text-decoration:none;font-size:.875rem;transition:color .3s ease}.social-list a:hover{color:var(--accent-yellow)}.card-time{grid-column:span 1;grid-row:span 1;display:flex;flex-direction:column;align-items:center;justify-content:center}.modal-enter{opacity:0;transform:translateY(-10px) scale(.98)}.modal-enter-active{opacity:1;transform:translateY(0) scale(1);transition:opacity .18s ease,transform .18s ease}.modal-exit{opacity:1;transform:translateY(0) scale(1)}.modal-exit-active{opacity:0;transform:translateY(-8px) scale(.98);transition:opacity .16s ease,transform .16s ease}.time-display{display:flex;align-items:center;justify-content:center}#current-time{font-size:1.5rem;font-weight:600;font-variant-numeric:tabular-nums;display:block}.timezone{color:var(--text-muted);font-size:.75rem;margin-left:.5rem}.card-link{position:relative;cursor:none;transition:all .3s ease}.card-link h3{font-size:1.125rem;font-weight:600}.card-arrow{position:absolute;top:1.5rem;right:1.5rem;color:var(--text-muted);transition:all .3s ease}.card-link:hover .card-arrow{color:var(--accent-yellow);transform:translate(2px,-2px)}.card-design{grid-column:span 1;grid-row:span 1;background:linear-gradient(135deg,#3b82f61a,#3b82f60d);border-color:#3b82f633}.card-design:hover{border-color:var(--accent-blue)}.card-pattern{position:absolute;bottom:1rem;right:1rem;display:grid;grid-template-columns:repeat(3,12px);grid-template-rows:repeat(2,12px);gap:4px;opacity:.3}.card-pattern span{background:var(--accent-blue);border-radius:2px}.card-now{grid-column:span 1;grid-row:span 1}.now-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.now-header h3{font-size:1.125rem;font-weight:600;margin-bottom:.25rem}.now-info{font-size:.75rem;color:var(--text-muted);text-decoration:none;transition:color .3s ease}.now-info:hover{color:var(--accent-yellow)}.status-indicator{position:relative;width:12px;height:12px}.pulse{position:absolute;width:100%;height:100%;background:var(--accent-red);border-radius:50%;animation:pulse 2s ease-in-out infinite}.dot{position:absolute;width:100%;height:100%;background:var(--accent-red);border-radius:50%}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:0}to{transform:scale(1);opacity:1}}.card-now p{font-size:.875rem;color:var(--text-secondary)}.card-playground,.card-blog{grid-column:span 1;grid-row:span 1}.card-countries{grid-column:span 1;grid-row:span 1;position:relative}.map-preview{position:absolute;bottom:0;left:0;right:0;height:60%;background:linear-gradient(135deg,rgba(250,204,21,.1),transparent);border-radius:0 0 12px 12px;overflow:hidden}.map-preview:after{content:"";position:absolute;top:30%;left:20%;width:60%;height:2px;background:var(--accent-yellow);transform:rotate(-15deg);opacity:.5}.card-theme{grid-column:span 2;grid-row:span 1;display:flex;align-items:center;justify-content:center}.theme-switcher{display:flex;gap:1rem}.theme-btn{width:40px;height:40px;border-radius:50%;border:2px solid transparent;cursor:none;transition:all .3s ease;position:relative}.theme-btn:hover{transform:scale(1.1);border-color:var(--text-primary)}.theme-btn.active{border-color:var(--text-primary)}.theme-btn.active:after{content:"";position:absolute;inset:-4px;border:2px solid var(--text-primary);border-radius:50%;animation:rotate 3s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.card-app{grid-column:span 1;grid-row:span 1;background:linear-gradient(135deg,#14b8a633,#14b8a60d);border-color:#14b8a64d;overflow:visible}.card-app:hover{border-color:var(--accent-teal)}.app-content{display:flex;justify-content:space-between;align-items:center;height:100%}.app-content h3{font-size:1rem;font-weight:600;line-height:1.3}.app-icon{position:absolute;right:1rem;bottom:-.5rem}.phone-mockup{width:60px;height:100px;background:linear-gradient(135deg,#14b8a6,#0d9488);border-radius:10px;padding:4px;transform:rotate(-10deg);transition:transform .3s ease;box-shadow:0 10px 20px #14b8a64d}.card-app:hover .phone-mockup{transform:rotate(0) translateY(-5px)}.phone-screen{width:100%;height:100%;background:#fff;border-radius:6px;position:relative;overflow:hidden}.phone-screen:before{content:"";position:absolute;top:10%;left:10%;right:10%;height:20%;background:linear-gradient(90deg,#e5e7eb 30%,#f3f4f6,#e5e7eb 70%);border-radius:4px;animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.card-footer{grid-column:span 1;grid-row:span 1;display:flex;align-items:center;padding:1rem 1.5rem}.card-footer p{font-size:.75rem;color:var(--text-muted);line-height:1.6}.heart{color:var(--accent-red);animation:heartbeat 2s ease-in-out infinite}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.astro-link{color:var(--accent-yellow);text-decoration:none;transition:color .3s ease}.astro-link:hover{color:var(--text-primary);text-decoration:underline}.weather-card{grid-column:span 1;grid-row:span 1;background:linear-gradient(135deg,#3b82f61a,#93c5fd0d);border-color:#3b82f633}.weather-card:hover{border-color:var(--accent-blue)}.music-player-card{grid-column:span 1;grid-row:span 1;background:linear-gradient(135deg,#a855f71a,#c4b5fd0d);border-color:#a855f733;overflow:visible}.music-player-card:hover{border-color:var(--accent-purple)}.code-snippet-card{grid-column:span 2;grid-row:span 1;background:linear-gradient(135deg,#22c55e1a,#86efac0d);border-color:#22c55e33}.code-snippet-card:hover{border-color:var(--accent-green)}.timeline-card{grid-column:span 1;grid-row:span 2;background:linear-gradient(135deg,#facc151a,#fbbf240d);border-color:#facc1533}.timeline-card:hover{border-color:var(--accent-yellow)}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-10px) rotate(1deg)}66%{transform:translateY(-5px) rotate(-1deg)}}@keyframes magneticPull{0%{transform:translate(0) translateY(0)}to{transform:translate(var(--magnetic-x, 0)) translateY(var(--magnetic-y, 0))}}.particle-trail{position:absolute;width:4px;height:4px;background:var(--accent-yellow);border-radius:50%;pointer-events:none;animation:particleFade 1s ease-out forwards}@keyframes particleFade{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0) translateY(-20px)}}.custom-cursor{width:8px;height:8px;background:var(--accent-yellow);border-radius:50%;position:fixed;pointer-events:none;z-index:10000;transition:all .1s ease;mix-blend-mode:difference;box-shadow:0 0 10px var(--accent-yellow),0 0 20px #facc154d}.cursor-follower{width:30px;height:30px;border:1px solid rgba(250,204,21,.4);border-radius:50%;position:fixed;pointer-events:none;z-index:9999;transition:all .2s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cursor-hover .custom-cursor{width:16px;height:16px;background:transparent;border:2px solid var(--accent-yellow);box-shadow:0 0 20px var(--accent-yellow),inset 0 0 10px #facc1533}.cursor-hover .cursor-follower{width:50px;height:50px;border-color:#facc1599;background:#facc150d}.matrix-mode{animation:matrixRain 10s linear infinite;filter:hue-rotate(120deg) contrast(1.2)}.disco-mode .card{animation:discoColors .5s infinite alternate}.rainbow-mode{animation:rainbowShift 8s linear infinite}@keyframes matrixRain{0%{filter:hue-rotate(0deg) contrast(1)}to{filter:hue-rotate(360deg) contrast(1.5)}}@keyframes discoColors{0%{background:#ff00964d;transform:scale(1.02)}25%{background:#00ff964d;transform:scale(1.05)}50%{background:#9600ff4d;transform:scale(1.02)}75%{background:#ff96004d;transform:scale(1.05)}to{background:#0096ff4d;transform:scale(1.02)}}@keyframes rainbowShift{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}.page-transition-fade{animation:pageFade .4s ease-in-out}.page-transition-slide{animation:pageSlide .5s ease-in-out}.page-transition-zoom{animation:pageZoom .6s ease-in-out}.page-transition-flip{animation:pageFlip .8s ease-in-out}.page-transition-matrix{animation:pageMatrix 1s ease-in-out}@keyframes pageFade{0%{opacity:1}50%{opacity:0}to{opacity:1}}@keyframes pageSlide{0%{transform:translate(0)}50%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes pageZoom{0%{transform:scale(1)}50%{transform:scale(1.1);filter:blur(2px)}to{transform:scale(1);filter:blur(0)}}@keyframes pageFlip{0%{transform:rotateY(0)}50%{transform:rotateY(90deg)}to{transform:rotateY(0)}}@keyframes pageMatrix{0%{filter:contrast(1) brightness(1);transform:scale(1)}25%{filter:contrast(2) brightness(.5) hue-rotate(120deg);transform:scale(1.05)}50%{filter:contrast(3) brightness(.2) hue-rotate(240deg);transform:scale(1.1)}75%{filter:contrast(2) brightness(.5) hue-rotate(360deg);transform:scale(1.05)}to{filter:contrast(1) brightness(1);transform:scale(1)}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.slider::-webkit-slider-thumb{appearance:none;width:16px;height:16px;background:var(--accent-yellow);border-radius:50%;cursor:pointer}.slider::-moz-range-thumb{width:16px;height:16px;background:var(--accent-yellow);border-radius:50%;cursor:pointer;border:none}.theme-dawn{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-card: rgba(0, 3, 15, .8);--accent-yellow: #ff6b6b;--border-hover: #ff6b6b;--text-primary: #e8e8e8}.theme-morning{--bg-primary: #f7f7f7;--bg-secondary: #ffffff;--bg-card: rgba(255, 255, 255, .9);--accent-yellow: #4ecdc4;--border-hover: #4ecdc4;--text-primary: #2c3e50}.theme-afternoon{--bg-primary: #fff8e1;--bg-secondary: #ffffff;--bg-card: rgba(255, 255, 255, .85);--accent-yellow: #ff9800;--border-hover: #ff9800;--text-primary: #1a1a1a}.theme-evening{--bg-primary: #2c1810;--bg-secondary: #3c2414;--bg-card: rgba(44, 24, 16, .8);--accent-yellow: #ff7043;--border-hover: #ff7043;--text-primary: #f5f5f5}.theme-night{--bg-primary: #0a0a0a;--bg-secondary: #111111;--bg-card: rgba(20, 20, 20, .8);--accent-yellow: #bb86fc;--border-hover: #bb86fc;--text-primary: #ffffff}@media (max-width: 1024px){.portfolio-container{grid-template-columns:repeat(2,1fr)}.card-hero{grid-column:span 2}.card-about{grid-column:span 2;grid-row:span 2}.card-contact{grid-column:span 1}.avatar-container{display:none}.hero-content{max-width:100%}}@media (max-width: 640px){.portfolio-container{grid-template-columns:1fr;padding:1rem}.card{grid-column:span 1!important;grid-row:span 1!important}.card-hero{grid-row:span 2!important}.social-buttons{justify-content:center}.theme-switcher{gap:.5rem}.theme-btn{width:32px;height:32px}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.ripple{position:absolute;border-radius:50%;width:100px;height:100px;background:#facc154d;transform:translate(-50%,-50%);animation:ripple-effect .6s ease-out;pointer-events:none}@keyframes ripple-effect{0%{width:0;height:0;opacity:1}to{width:100px;height:100px;opacity:0}}
