.click-area { position: relative; width: 100%; height: 200px; background-color: #f8f9fa; border-radius: 10px; display: flex; justify-content: center; align-items: center; cursor: pointer; overflow: hidden; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); user-select: none; margin-bottom: 20px; } .click-button { width: 150px; height: 150px; background: linear-gradient(135deg, #3498db, #2980b9); border-radius: 50%; display: flex; justify-content: center; align-items: center; color: white; font-weight: bold; font-size: 20px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2); transition: transform 0.05s, box-shadow 0.05s; } .click-area:active .click-button { transform: scale(0.95); box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); } .click-effect { position: absolute; width: 50px; height: 50px; background-color: rgba(255, 255, 255, 0.7); border-radius: 50%; pointer-events: none; transform: translate(-50%, -50%); animation: clickRipple 0.3s ease-out; } @keyframes clickRipple { 0% { opacity: 1; transform: translate(-50%, -50%) scale(0); } 100% { opacity: 0; transform: translate(-50%, -50%) scale(3); } } /* Mobile optimization */ @media (max-width: 576px) { .click-area { height: 180px; } .click-button { width: 120px; height: 120px; font-size: 16px; } }