📄 +page.svelte
<script lang="ts">
	import { goto } from '$app/navigation';

	function createRoom() {
		goto('/master');
	}

	function joinRoom() {
		goto('/join');
	}
</script>

<div class="home-container">
	<div class="content">
		<h1>Stop It!</h1>
		<p class="subtitle">Multi-Device Reaction Game</p>

		<div class="button-container">
			<button class="primary-button" onclick={createRoom}>
				<div class="button-icon">🎮</div>
				<div class="button-text">
					<div class="button-title">Create Game</div>
					<div class="button-description">Start as master device</div>
				</div>
			</button>

			<button class="secondary-button" onclick={joinRoom}>
				<div class="button-icon">📱</div>
				<div class="button-text">
					<div class="button-title">Join Game</div>
					<div class="button-description">Connect as display device</div>
				</div>
			</button>
		</div>

		<div class="info">
			<h3>How to Play:</h3>
			<ol>
				<li>One device creates a game as the master</li>
				<li>Other devices join using the room code</li>
				<li>Configure players and duration on the master</li>
				<li>When a color appears on your screen, tap it quickly!</li>
				<li>The player with the most points wins</li>
			</ol>
		</div>
	</div>
</div>

<style>
	:global(body) {
		margin: 0;
		padding: 0;
		font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
	}

	.home-container {
		min-height: 100vh;
		background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 2rem;
	}

	.content {
		max-width: 600px;
		width: 100%;
		text-align: center;
	}

	h1 {
		font-size: 4rem;
		color: white;
		margin-bottom: 0.5rem;
		text-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
	}

	.subtitle {
		font-size: 1.5rem;
		color: rgba(255, 255, 255, 0.9);
		margin-bottom: 3rem;
	}

	.button-container {
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
		margin-bottom: 3rem;
	}

	.primary-button,
	.secondary-button {
		display: flex;
		align-items: center;
		gap: 1.5rem;
		padding: 1.5rem 2rem;
		border: none;
		border-radius: 12px;
		cursor: pointer;
		transition: all 0.3s;
		text-align: left;
	}

	.primary-button {
		background: white;
		color: #333;
		box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
	}

	.primary-button:hover {
		transform: translateY(-4px);
		box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
	}

	.secondary-button {
		background: rgba(255, 255, 255, 0.2);
		color: white;
		border: 2px solid white;
		backdrop-filter: blur(10px);
	}

	.secondary-button:hover {
		background: rgba(255, 255, 255, 0.3);
		transform: translateY(-4px);
	}

	.button-icon {
		font-size: 3rem;
	}

	.button-text {
		flex: 1;
	}

	.button-title {
		font-size: 1.5rem;
		font-weight: bold;
		margin-bottom: 0.25rem;
	}

	.button-description {
		font-size: 1rem;
		opacity: 0.8;
	}

	.info {
		background: rgba(255, 255, 255, 0.15);
		backdrop-filter: blur(10px);
		border-radius: 12px;
		padding: 2rem;
		color: white;
		border: 1px solid rgba(255, 255, 255, 0.3);
	}

	.info h3 {
		margin-top: 0;
		margin-bottom: 1rem;
		font-size: 1.3rem;
	}

	.info ol {
		text-align: left;
		margin: 0;
		padding-left: 1.5rem;
	}

	.info li {
		margin-bottom: 0.75rem;
		font-size: 1rem;
		line-height: 1.5;
	}

	@media (max-width: 600px) {
		h1 {
			font-size: 3rem;
		}

		.subtitle {
			font-size: 1.2rem;
		}

		.button-title {
			font-size: 1.25rem;
		}

		.button-icon {
			font-size: 2.5rem;
		}
	}
</style>