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

            body {
                background-color: #111;
                color: white;
                font-family: "Inter", sans-serif;
                display: flex;
                flex-direction: column;
                align-items: center;
                padding: 1rem;
            }

            h1 {
                margin-bottom: 0.3rem;
                font-size: 1.8rem;
            }

            p.description {
                margin-bottom: 1rem;
                font-size: 0.85rem;
                color: #ccc;
                text-align: center;
                padding: 0 1rem;
            }

            .game-container {
                position: relative;
            }

            canvas {
                background-color: #222;
                border: 2px solid #4e54c8;
                touch-action: none;
            }

            #start-btn {
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                z-index: 10;
                font-size: 20px;
                background-color: #4e54c8;
                border: none;
                border-radius: 8px;
                color: white;
                cursor: pointer;
                width: 100px;
                height: 50px;
                padding-top: 2px;
                font-weight: 400;
            }

            .controls {
                display: grid;
                grid-template-areas: ". up ." "left . right" ". down .";
                grid-template-columns: 50px 50px 50px;
                grid-template-rows: 50px 50px 50px;
                gap: 0.4rem;
                margin: 1.2rem 0 0.5rem;
            }

            .btn {
                background: #4e54c8;
                color: white;
                border: none;
                font-size: 1.2rem;
                border-radius: 8px;
                display: flex;
                align-items: center;
                justify-content: center;
                transition: background-color 0.2s ease;
            }

            .btn:active {
                background-color: #6a72f8;
            }

            .btn.up {
                grid-area: up;
            }

            .btn.down {
                grid-area: down;
            }

            .btn.left {
                grid-area: left;
            }

            .btn.right {
                grid-area: right;
            }

            #game-over {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                background-color: rgba(0, 0, 0, 0.6);
                color: white;
                display: none;
                flex-direction: column;
                align-items: center;
                justify-content: center;
                z-index: 20;
            }

            #game-over p {
                font-size: 1.5rem;
                margin-bottom: 1rem;
            }

            button.restart {
                margin-top: 1rem;
                font-size: 1.1rem;
                background-color: #4e54c8;
                color: white;
                border: none;
                border-radius: 10px;
                width: 90%;
                max-width: 400px;
                transition: background-color 0.2s ease;
                cursor: pointer;
            }

            button.menu,
            button.share {
                padding: 1rem;
                margin-top: 1rem;
                font-size: 1.1rem;
                background-color: #4e54c8;
                color: white;
                border: none;
                border-radius: 10px;
                width: 90%;
                max-width: 400px;
                transition: background-color 0.2s ease;
                cursor: pointer;
            }

            button.restart:active,
            button.menu:active,
            button.share:active {
                background-color: #6a72f8;
            }