body {
            background-color: #000;
            margin: 0px;
            overflow: hidden;
            color: #fff;
            font-family: monospace;
            font-size: 13px;
        }
        
        .info {
            position: absolute;
            top: 10px;
            width: 100%;
            text-align: center;
            z-index: 100;
            display: block;
        }
        
        .controls {
            position: absolute;
            top: 10px;
            right: 10px;
            background: rgba(0,0,0,0.9);
            padding: 15px;
            border-radius: 8px;
            z-index: 100;
            min-width: 220px;
            border: 1px solid #333;
        }
        
        .control-group {
            margin: 12px 0;
        }
        
        label {
            display: block;
            margin-bottom: 8px;
            color: #ddd;
            font-size: 12px;
        }
        
        input[type="range"] {
            width: 180px;
            margin: 4px 0;
        }
        
        input[type="checkbox"] {
            margin-right: 8px;
            transform: scale(1.2);
        }
        
        select {
            background: #222;
            color: #fff;
            border: 1px solid #555;
            padding: 4px;
            border-radius: 3px;
            width: 100px;
        }
        
        #hint-text {
            margin-top: 20px;
            color: #aaa;
            font-size: 14px;
        }
        
        .value-display {
            color: #4a9eff;
            font-weight: bold;
        }
        
        .loading {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            color: #fff;
            font-size: 16px;
            z-index: 200;
        }

        /* Mobile optimizations */
@media (max-width: 600px) {
    #welcome-overlay div[style*="font-size:3.2em"] {
        font-size: 2em !important;
        padding: 0 10px;
    }
    #continue-prompt {
        font-size: 1em !important;
        padding: 0 10px;
    }
    .controls {
        max-height: 60vh;
        overflow-y: auto;
        padding: 8px;
        font-size: 1em;
    }
    .control-group {
        margin-bottom: 14px;
        font-size: 1em;
    }
    .control-group input[type="range"] {
        width: 100%;
        height: 32px;
        touch-action: pan-x;
    }
    .control-group label, .control-group select {
        font-size: 1em;
    }
    #fps-counter, #sys-info {
        display: none !important;
    }
    .info {
        font-size: 1em;
        padding: 8px;
    }
    .loading {
        font-size: 1.1em;
        padding: 10px;
    }
    /* Make bottom warning more readable */
    [style*="position: fixed; bottom: 10px;"] span {
        font-size: 1em !important;
        padding: 6px 8px !important;
    }
}