* {
                box-sizing: border-box;
                margin: 0;
                padding: 0;
                user-select: none;
            }

            body {
                font-family: "Inter", sans-serif;
                background: linear-gradient(135deg, #2c3e50, #34495e);
                color: #fff;
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: flex-start;
                text-align: center;
                padding: 2rem;
            }

            h1 {
                font-size: 4rem;
                background: linear-gradient(90deg, #f9ca24, #e056fd);
                -webkit-background-clip: text;
                -webkit-text-fill-color: transparent;
                text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
                animation: bounceIn 1s ease;
                margin-bottom: 1rem;
                line-height: 1.2;
            }

            @media (max-width: 500px) {
                h1 {
                    font-size: 2.5rem;
                }
            }

            @keyframes bounceIn {
                0% {
                    transform: scale(0.5);
                    opacity: 0;
                }
                60% {
                    transform: scale(1.2);
                    opacity: 1;
                }
                80% {
                    transform: scale(0.95);
                }
                100% {
                    transform: scale(1);
                }
            }

            #tapZone {
                background: #1abc9c;
                width: 280px;
                height: 280px;
                border-radius: 1.5rem;
                box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3);
                display: flex;
                align-items: center;
                justify-content: center;
                font-weight: bold;
                margin-bottom: 2rem;
                transition:
                    background 0.2s ease,
                    transform 0.1s ease;
                cursor: pointer;
                font-size: 2rem;
                position: relative;
                animation: none;
                user-select: none;
            }

            #tapZone:active {
                background: #16a085;
            }

            /* Efecto de pop en el número */
            .pop {
                animation: pop 0.2s ease;
            }

            @keyframes pop {
                0% {
                    transform: scale(1);
                    color: #ffffff;
                }
                50% {
                    transform: scale(1.3);
                    color: #ffd700;
                }
                100% {
                    transform: scale(1);
                    color: #ffffff;
                }
            }

            #result {
                font-size: 1.3rem;
                margin-bottom: 1rem;
                color: #fff;
            }

            .button-group {
                display: flex;
                gap: 1rem;
                flex-wrap: wrap;
                justify-content: center;
                margin-top: 1rem;
            }

            button {
                padding: 0.8rem 1.6rem;
                font-size: 1rem;
                border: none;
                border-radius: 30px;
                cursor: pointer;
                background-color: #f39c12;
                color: white;
                font-weight: bold;
                box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
                transition:
                    background 0.2s ease,
                    transform 0.1s ease;
            }

            button:hover {
                background-color: #e67e22;
            }

            button:active {
                transform: scale(0.97);
            }

            @media (max-width: 500px) {
                #tapZone {
                    width: 220px;
                    height: 220px;
                }
                h1 {
                    font-size: 2rem;
                }
            }