@keyframes fadeIn-ea32e1e3{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp-ea32e1e3{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes float-ea32e1e3{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse-ea32e1e3{0%,to{opacity:1}50%{opacity:.7}}@keyframes shimmer-ea32e1e3{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes bounce-ea32e1e3{0%,20%,53%,80%,to{transform:translateZ(0)}40%,43%{transform:translate3d(0,-8px,0)}70%{transform:translate3d(0,-4px,0)}90%{transform:translate3d(0,-2px,0)}}.fadeIn[data-v-ea32e1e3]{animation:fadeIn-ea32e1e3 .8s ease-out}.slideInUp[data-v-ea32e1e3]{animation:slideInUp-ea32e1e3 .6s ease-out}.float[data-v-ea32e1e3]{animation:float-ea32e1e3 3s ease-in-out infinite}.pulse[data-v-ea32e1e3]{animation:pulse-ea32e1e3 2s ease-in-out infinite}.bounce[data-v-ea32e1e3]{animation:bounce-ea32e1e3 1s ease-in-out}.hover-lift[data-v-ea32e1e3]{transition:all .3s cubic-bezier(.4,0,.2,1)}.hover-lift[data-v-ea32e1e3]:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001a}.gradient-text[data-v-ea32e1e3]{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass[data-v-ea32e1e3]{background:#ffffff1a;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.dark .glass[data-v-ea32e1e3]{background:#0003;border:1px solid rgba(255,255,255,.1)}.ripple[data-v-ea32e1e3]{position:relative;overflow:hidden}.ripple[data-v-ea32e1e3]:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.ripple[data-v-ea32e1e3]:hover:before{width:300px;height:300px}.card-hover[data-v-ea32e1e3]{transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.card-hover[data-v-ea32e1e3]:hover{transform:translateY(-12px) scale(1.02);box-shadow:0 25px 50px #00000026}.search-focus[data-v-ea32e1e3]{transition:all .3s ease}.search-focus[data-v-ea32e1e3]:focus{transform:scale(1.02);box-shadow:0 0 0 3px #3b82f61a}.tag-animate[data-v-ea32e1e3]{transition:all .2s ease}.tag-animate[data-v-ea32e1e3]:hover{transform:scale(1.05);box-shadow:0 4px 12px #00000026}.loading[data-v-ea32e1e3]{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer-ea32e1e3 1.5s infinite}.dark .loading[data-v-ea32e1e3]{background:linear-gradient(90deg,#374151 25%,#4b5563,#374151 75%);background-size:200% 100%}.line-clamp-3[data-v-ea32e1e3]{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}[data-v-ea32e1e3]::-webkit-scrollbar{width:8px}[data-v-ea32e1e3]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}[data-v-ea32e1e3]::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px}[data-v-ea32e1e3]::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190)}.dark[data-v-ea32e1e3] ::-webkit-scrollbar-track{background:#374151}.dark[data-v-ea32e1e3] ::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#4f46e5,#7c3aed)}.dark[data-v-ea32e1e3] ::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#4338ca,#6d28d9)}@media (max-width: 640px){.grid[data-v-ea32e1e3]{grid-template-columns:1fr;gap:1rem}.text-4xl[data-v-ea32e1e3]{font-size:2rem}.text-3xl[data-v-ea32e1e3]{font-size:1.75rem}.px-8[data-v-ea32e1e3]{padding-left:1.5rem;padding-right:1.5rem}.py-4[data-v-ea32e1e3]{padding-top:.75rem;padding-bottom:.75rem}.category-card[data-v-ea32e1e3]{max-width:100%}}@media (max-width: 768px){.lg\:gap-8[data-v-ea32e1e3]{gap:1.5rem}.lg\:p-12[data-v-ea32e1e3]{padding:2rem}}@media (prefers-reduced-motion: reduce){[data-v-ea32e1e3],[data-v-ea32e1e3]:before,[data-v-ea32e1e3]:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-color-scheme: dark){.glass[data-v-ea32e1e3]{background:#0000004d;border:1px solid rgba(255,255,255,.1)}}@media (prefers-contrast: high){.border-white\/20[data-v-ea32e1e3]{border-color:#ffffff80}.text-gray-600[data-v-ea32e1e3]{color:#000}.dark .text-gray-300[data-v-ea32e1e3]{color:#fff}}
