authState.openLoginModal()} role="button" tabindex="0" onkeydown={(e) => e.key === "Enter" && authState.openLoginModal()} >
{#if authState.currentAccount}
{:else}
{/if}
{authState.currentAccount ? authState.currentAccount.username : "Login Account"}
{#if authState.currentAccount} {#if authState.currentAccount.type === "Microsoft"} {#if authState.currentAccount.expires_at && authState.currentAccount.expires_at * 1000 < Date.now()}
Expired
{:else}
Online {/if} {:else}
Offline {/if} {:else}
Guest {/if}
uiState.toggleConsole()} >
{uiState.showConsole ? "HIDE LOGS" : "SHOW LOGS"}
loadInstalledVersions()} class="p-2.5 dark:bg-zinc-900 bg-zinc-50 border dark:border-zinc-700 border-zinc-300 rounded-md dark:text-zinc-500 text-zinc-400 dark:hover:text-white hover:text-black dark:hover:border-zinc-600 hover:border-zinc-400 transition-colors" title="Refresh installed versions" >
isVersionDropdownOpen = !isVersionDropdownOpen} disabled={installedVersions.length === 0 && !isLoadingVersions} class="flex items-center justify-between gap-2 w-56 px-4 py-2.5 text-left dark:bg-zinc-900 bg-zinc-50 border dark:border-zinc-700 border-zinc-300 rounded-md text-sm font-mono dark:text-white text-gray-900 dark:hover:border-zinc-600 hover:border-zinc-400 focus:border-indigo-500 focus:ring-1 focus:ring-indigo-500/30 transition-colors cursor-pointer outline-none disabled:opacity-50 disabled:cursor-not-allowed" >
{#if isLoadingVersions} Loading... {:else if installedVersions.length === 0} No versions installed {:else} {gameState.selectedVersion || "Select version"} {/if}
{#if isVersionDropdownOpen && installedVersions.length > 0}
{#each versionOptions as version}
selectVersion(version.id)} disabled={version.id === "loading" || version.id === "empty"} class="w-full flex items-center justify-between px-3 py-2 text-sm font-mono text-left transition-colors outline-none {version.id === gameState.selectedVersion ? 'bg-indigo-600 text-white' : 'dark:text-zinc-300 text-gray-700 dark:hover:bg-zinc-800 hover:bg-zinc-100'} {version.id === 'loading' || version.id === 'empty' ? 'opacity-50 cursor-not-allowed' : 'cursor-pointer'}" >
{version.id} {#if version.type && version.type !== 'release' && version.type !== 'loading' && version.type !== 'empty'}
{version.type}
{/if}
{#if version.id === gameState.selectedVersion}
{/if}
{/each}
{/if}
gameState.startGame()} disabled={installedVersions.length === 0 || !gameState.selectedVersion} class="bg-emerald-600 hover:bg-emerald-500 disabled:opacity-50 disabled:cursor-not-allowed text-white h-14 px-10 rounded-sm transition-all duration-200 hover:scale-[1.02] active:scale-[0.98] shadow-lg shadow-emerald-500/20 flex items-center gap-3 font-bold text-lg tracking-widest uppercase" >
Launch