@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{box-shadow:0 0 20px rgba(139,92,246,.5)}50%{box-shadow:0 0 30px rgba(59,130,246,.8)}}.animate-slide-up{animation:slideUp .5s ease-out forwards}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-scale-in{animation:scaleIn .3s ease-out}.animate-gradient-shift{background-size:400% 400%;animation:gradientShift 15s ease infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.animate-delay-500{animation-delay:.5s}.animate-delay-1000{animation-delay:1s}.gradient-warm{background:linear-gradient(135deg,#fbbf24,#f59e0b)}.gradient-cool{background:linear-gradient(135deg,#60a5fa,#3b82f6)}.gradient-health{background:linear-gradient(135deg,#10b981,#3b82f6)}.gradient-wellness{background:linear-gradient(135deg,#8b5cf6,#ec4899)}.gradient-energy{background:linear-gradient(135deg,#f97316,#ef4444)}.gradient-calm{background:linear-gradient(135deg,#06b6d4,#0891b2)}.glass{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.glass-card{background:rgba(255,255,255,.7);backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.3);box-shadow:0 8px 32px rgba(0,0,0,.1)}.glass-dark{background:rgba(0,0,0,.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.shadow-glow{box-shadow:0 0 20px rgba(139,92,246,.3)}.shadow-glow-lg{box-shadow:0 0 30px rgba(59,130,246,.5)}.shadow-colored{box-shadow:0 10px 25px rgba(139,92,246,.2)}.shadow-colored-lg{box-shadow:0 20px 40px rgba(139,92,246,.3)}.hover-lift{transition:all .3s cubic-bezier(.4,0,.2,1)}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.15)}.hover-scale{transition:transform .3s cubic-bezier(.4,0,.2,1)}.hover-scale:hover{transform:scale(1.05)}.hover-glow:hover{box-shadow:0 0 25px rgba(139,92,246,.4)}.focus-ring{transition:all .3s ease}.focus-ring:focus{outline:none;ring:3px solid rgba(139,92,246,.5);ring-offset:2px}.focus-ring:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(139,92,246,.5)}.ripple{position:relative;overflow:hidden}.ripple:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.5);transform:translate(-50%,-50%);transition:width .6s,height .6s}.ripple:active:before{width:300px;height:300px}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.progress-ring{transform:rotate(-90deg)}.progress-ring-circle{transition:stroke-dashoffset .5s ease}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px;-webkit-transition:background .3s;transition:background .3s}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (prefers-contrast:high){.gradient-cool,.gradient-health,.gradient-wellness{border:2px solid}.glass{background:rgba(255,255,255,.9);backdrop-filter:none}}:root{--primary-gradient:linear-gradient(135deg,#8b5cf6,#3b82f6);--success-gradient:linear-gradient(135deg,#10b981,#059669);--warning-gradient:linear-gradient(135deg,#f59e0b,#d97706);--error-gradient:linear-gradient(135deg,#ef4444,#dc2626);--info-gradient:linear-gradient(135deg,#3b82f6,#1e40af);--glass-bg:rgba(255,255,255,0.1);--glass-border:rgba(255,255,255,0.2);--shadow-soft:0 4px 12px rgba(0,0,0,0.05);--shadow-medium:0 8px 24px rgba(0,0,0,0.1);--shadow-large:0 16px 48px rgba(0,0,0,0.15)}