Spaces:
Running
Running
File size: 1,518 Bytes
86134e2 5eaef9a 86134e2 5eaef9a 86134e2 5eaef9a 86134e2 5eaef9a 86134e2 5eaef9a 86134e2 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | /* Custom Styles for BounceBox Simulator */
.control-btn {
@apply flex items-center justify-center p-3 border-2 border-gray-200 rounded-lg text-sm font-medium text-gray-700 transition-all duration-200 hover:border-blue-500 hover:text-blue-600;
}
.control-btn.active {
@apply border-blue-500 bg-blue-50 text-blue-600;
}
.btn-primary {
@apply flex items-center justify-center p-3 bg-blue-600 text-white rounded-lg font-medium transition-all duration-200 hover:bg-blue-700 transform hover:scale-105;
}
.btn-secondary {
@apply flex items-center justify-center p-3 bg-gray-200 text-gray-700 rounded-lg font-medium transition-all duration-200 hover:bg-gray-300 transform hover:scale-105;
}
.slider {
background: linear-gradient(to right, #3b82f6 0%, #3b82f6 50%, #e5e7eb 50%, #e5e7eb 100%);
}
.slider::-webkit-slider-thumb {
@apply appearance-none h-5 w-5 bg-white border-2 border-blue-600 rounded-full cursor-pointer shadow-lg;
}
.slider::-moz-range-thumb {
@apply h-5 w-5 bg-white border-2 border-blue-600 rounded-full cursor-pointer shadow-lg;
}
/* Canvas styling */
#simulationCanvas {
cursor: crosshair;
}
/* Animation for bounce counter */
@keyframes bounce {
0%, 20%, 53%, 80%, 100% {
transform: translate3d(0,0,0);
}
40%, 43% {
transform: translate3d(0,-8px,0);
}
70% {
transform: translate3d(0,-4px,0);
}
90% {
transform: translate3d(0,-2px,0);
}
}
.bounce-animation {
animation: bounce 0.6s ease-in-out;
} |