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

        body {
            font-family: 'Courier New', Courier, monospace;
            background-color: #1a1a2e;
            color: #0f0;
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            overflow: hidden;
        }

        #game-container {
            width: 400px;
            height: 600px;
            background-color: #16213e;
            border: 2px solid #0f0;
            border-radius: 8px;
            display: flex;
            flex-direction: column;
            position: relative;
            box-shadow: 0 0 15px rgba(0, 255, 0, 0.2);
        }

        #header {
            display: flex;
            justify-content: space-between;
            padding: 15px;
            background-color: #0f3460;
            font-size: 1.2rem;
            font-weight: bold;
            border-bottom: 2px solid #0f0;
        }

        #word-area {
            flex-grow: 1;
            position: relative;
            overflow: hidden;
        }

        .word {
            position: absolute;
            font-size: 1.2rem;
            font-weight: bold;
            color: #fff;
            text-shadow: 0 0 5px #0f0;
            white-space: nowrap;
        }

        #input-area {
            display: flex;
            padding: 10px;
            background-color: #0f3460;
            border-top: 2px solid #0f0;
        }

        #type-input {
            flex-grow: 1;
            padding: 10px;
            font-size: 1.2rem;
            font-family: 'Courier New', Courier, monospace;
            background-color: #1a1a2e;
            border: 1px solid #0f0;
            color: #0f0;
            outline: none;
            text-align: center;
        }

        /* Overlay for Start/Game Over screens */
        .overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(26, 26, 46, 0.9);
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            z-index: 10;
        }

        .overlay h2 {
            font-size: 2.5rem;
            margin-bottom: 20px;
            color: #e94560;
        }

        .overlay button {
            padding: 10px 20px;
            font-size: 1.2rem;
            font-family: inherit;
            background-color: #0f0;
            color: #1a1a2e;
            border: none;
            cursor: pointer;
            font-weight: bold;
            border-radius: 4px;
            transition: transform 0.1s;
        }

        .overlay button:active {
            transform: scale(0.95);
        }
        
        .overlay button:disabled {
            background-color: #555;
            color: #aaa;
            cursor: not-allowed;
        }