@keyframes blob{0%{transform:translate(0) scale(1)}33%{transform:translate(30px,-50px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}to{transform:translate(0) scale(1)}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(180deg)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px rgba(59,130,246,.3)}50%{box-shadow:0 0 40px rgba(59,130,246,.6)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-blob{animation:blob 7s infinite}.animate-float{animation:float 6s ease-in-out infinite}.animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);background-size:200% 100%;animation:shimmer 2s infinite}.animate-fade-in-up{animation:fade-in-up .8s ease-out forwards}.animation-delay-200{animation-delay:.2s;opacity:0}.animation-delay-400{animation-delay:.4s;opacity:0}.animation-delay-600{animation-delay:.6s;opacity:0}.animation-delay-800{animation-delay:.8s;opacity:0}.animation-delay-1000{animation-delay:1s;opacity:0}.animation-delay-2000{animation-delay:2s}.animation-delay-3000{animation-delay:3s}.animation-delay-4000{animation-delay:4s}.bg-grid-pattern{background-image:linear-gradient(rgba(0,0,0,.05) 1px,transparent 0),linear-gradient(90deg,rgba(0,0,0,.05) 1px,transparent 0);background-size:50px 50px}@media (prefers-color-scheme:dark){.bg-grid-pattern{background-image:linear-gradient(hsla(0,0%,100%,.05) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.05) 1px,transparent 0)}}.backdrop-blur-sm{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.backdrop-blur-lg{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:rgba(0,0,0,.1);border-radius:10px}::-webkit-scrollbar-thumb{background:linear-gradient(45deg,#3b82f6,#8b5cf6);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(45deg,#2563eb,#7c3aed)}a:focus-visible,button:focus-visible{outline:2px solid #3b82f6;outline-offset:2px;border-radius:8px}*{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@media (max-width:640px){.animate-blob{width:150px!important;height:150px!important}.animate-float{animation-duration:8s}.backdrop-blur-lg{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}}@media (min-width:641px) and (max-width:1024px){.animate-blob{width:220px!important;height:220px!important}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.animate-blob,.animate-float,.animate-pulse-glow,.animate-shimmer{animation:none!important}}@media (prefers-contrast:high){.bg-gradient-to-br,.bg-gradient-to-r{background-image:none!important;background-color:currentColor}}@media print{.animate-blob,.animate-float,.bg-grid-pattern{display:none}body{background:#fff;color:#000}}@media (hover:hover){.group:hover .group-hover\:rotate-3{transform:rotate(3deg) scale(1.1)}.group:hover .group-hover\:scale-110{transform:scale(1.1)}}@media (hover:none){a,button{min-height:44px;min-width:44px}}.loading-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.dark .loading-skeleton{background:linear-gradient(90deg,#2a2a2a 25%,#1a1a1a 50%,#2a2a2a 75%)}html{scroll-behavior:smooth}::selection{background-color:rgba(59,130,246,.3);color:inherit}::-moz-selection{background-color:rgba(59,130,246,.3);color:inherit}