@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce-in{0%{opacity:0;transform:scale(.9)}50%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.85}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes plant-sway{0%,to{transform:rotate(0)}25%{transform:rotate(.5deg)}75%{transform:rotate(-.5deg)}}.animate-fade-in{animation:.3s ease-in-out fade-in}.animate-slide-up{animation:.4s ease-out slide-up}.animate-bounce-in{animation:.5s cubic-bezier(.68,-.55,.265,1.55) bounce-in}.animate-pulse-soft{animation:3s cubic-bezier(.4,0,.6,1) infinite pulse-soft}.animate-plant-sway{transform-origin:bottom;animation:3s ease-in-out infinite plant-sway}.plant-card-base{transition:all .3s cubic-bezier(.23,1,.32,1)}.plant-card-base:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001a}.plant-card-base:active{transform:translateY(-2px)}.confidence-high{color:#166534;background:linear-gradient(135deg,#dcfce7 0%,#bbf7d0 100%);border-color:#22c55e}.confidence-medium{color:#854d0e;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border-color:#eab308}.confidence-low{color:#92400e;background:linear-gradient(135deg,#fed7aa 0%,#fdba74 100%);border-color:#fb923c}@keyframes checkmark-pop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.checkmark-pop{animation:.4s cubic-bezier(.68,-.55,.265,1.55) checkmark-pop}.gradient-overlay-top{background:linear-gradient(#fffc,#fff0)}.gradient-overlay-bottom{background:linear-gradient(#fff0,#fffc)}html{scroll-behavior:smooth}@apply ring-2 ring-green-400 ring-offset-2 transition-all;@apply relative px-4 py-2 rounded-lg font-medium transition-all duration-300;@apply hover:shadow-lg hover:-translate-y-0.5;@apply active:translate-y-0 active:shadow-md;@apply focus:outline-none focus:ring-2 focus:ring-offset-2;@apply bg-green-500 text-white focus:ring-green-400;@apply hover:bg-green-600;@apply bg-gray-100 text-gray-800 focus:ring-gray-400;@apply hover:bg-gray-200;@apply inline-flex items-center gap-2 px-3 py-1 rounded-full text-sm font-medium;@apply bg-white border-2 transition-all;@apply border-orange-300 text-orange-700 bg-orange-50;@apply border-green-300 text-green-700 bg-green-50;@apply border-yellow-300 text-yellow-700 bg-yellow-50;@apply border-purple-300 text-purple-700 bg-purple-50;
