body { margin: 0; background: #111; color: #fff; font-family: Arial, sans-serif; text-align: center; }        
#gameCanvas { 
	background: #000; 
	border: 2px solid #555; 
	margin-top: 20px; 
	image-rendering: auto;
    touch-action: none;
}
.info { margin-top: 12px; color: #ccc; }
button { margin-top: 10px; padding: 8px 18px; cursor: pointer; }
#life {
    letter-spacing: 4px;
    font-size: 24px;
}
#startBtn {
	background-color: #4CAF50;
	color: white;
	padding: 12px 30px;
	border: none;
	border-radius: 8px;
	font-size: 18px;
	cursor: pointer;
	transition: all 0.2s ease;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}
#startBtn:hover:enabled {
	background-color: #45a049;
	transform: translateY(-2px);
}
#startBtn:disabled {
	background-color: #555;
	cursor: not-allowed;
}
html,
body {
    touch-action: none;
    overscroll-behavior: none;
    user-select: none;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
}

.game-wrap {
    position: relative;
    display: inline-block;
    vertical-align: top;
}

#touch-control {
    position: fixed;
    left: 18px;
    bottom: calc(18px + env(safe-area-inset-bottom));
    width: 120px;
    height: 120px;
    z-index: 1500;
    display: none;
}

#touch-stick {
    position: relative;
    width: 120px;
    height: 120px;
    border: 2px solid rgba(255,255,255,0.45);
    border-radius: 50%;
    background: rgba(0,0,0,0.28);
}

#touch-knob {
    position: absolute;
    left: 40px;
    top: 40px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255,255,255,0.65);
}

@media (pointer: coarse) {
    #touch-control {
        display: block;
    }
}