* {
	box-sizing: border-box;
	margin: 0;
	-webkit-tap-highlight-color: transparent;
}

html, body {
	height: 100%;
	overflow: hidden;
	background: #000;
	touch-action: none;
}

#dust {
	position: fixed;
	inset: 0;
	width: 100%;
	height: 100%;
}

#glow {
	position: fixed;
	top: 0;
	left: 0;
	width: 420px;
	height: 420px;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.08), transparent 60%);
	opacity: 0;
	pointer-events: none;
	transform: translate(-9999px, -9999px);
	transition: opacity 0.6s ease;
}

#glow.visible {
	opacity: 1;
	transition-duration: 0.1s;
}

main {
	position: fixed;
	inset: 0;
	display: grid;
	place-items: center;
}

#logo {
	padding: 1rem 2rem;
	cursor: default;
	user-select: none;
	-webkit-user-select: none;
	-webkit-touch-callout: none;
}

#title {
	display: block;
	color: #fff;
	font-family: "Courier New", ui-monospace, monospace;
	font-size: clamp(4rem, 16vw, 11rem);
	font-weight: 700;
	letter-spacing: -0.04em;
	animation: breathe 6s ease-in-out infinite;
	transition: text-shadow 0.4s ease;
}

#title.spinning {
	text-shadow: 3px 0 #ff2a6d, -3px 0 #05d9e8, 0 0 40px rgba(255, 255, 255, 0.3);
	animation: none;
}

@keyframes breathe {
	50% { text-shadow: 0 0 30px rgba(255, 255, 255, 0.18); }
}