html, body {
	height: 100%;
}
body {
	margin: 0;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 20px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	min-height: 100vh;
	background: #ffffff;
	color: #000000;
	line-height: var(--line-height);
}
.root, :root {
 	--v-gap: 0;
 	--line-height: 1.15;
}
/* Ensure all text in the centered area uses Arial Bold 20px */
.center {
 	font-family: Arial, Helvetica, sans-serif;
 	font-size: 20px;
 	font-weight: 700;
}

/* Consistent vertical rhythm: use the same gap between all direct children */
.center > * {
  margin: 0 0 var(--v-gap);
  line-height: var(--line-height);
}
.center h1 { font-size: 20px; font-weight: 700; }
.center h1 { text-transform: uppercase; }
.center p { font-size: 20px; font-weight: 700; }
a#email-link, a#ig-link { color: inherit; text-decoration: underline; cursor: pointer; font-size: 20px; font-weight: 700; }

.center > *:last-child { margin-bottom: 0; }

/* Minimal cursor counter without background
   Simple Arial 15px, no background, no border, pointer-events disabled
   Positioned near the cursor; left/top set from JS; opacity toggled by JS */
#cursor-counter {
 	position: fixed;
 	pointer-events: none;
 	transform: translate(-50%, -50%);
 	font-family: Arial, Helvetica, sans-serif;
	font-size: 20px;
	font-weight: 700;
 	background: none;
 	padding: 0;
 	border: none;
 	border-radius: 0;
  	transition: opacity .12s ease;
	opacity: 0;
 	z-index: 9999;
 	color: inherit;
}

/* Disable text selection across the page */
body, .center, .center * {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Mobile / small screens: reduce font-size, line-height and gaps */
@media (max-width: 640px) {
	:root { --line-height: 1.05; --v-gap: 0.15em; }

	/* Make the viewport fixed and prevent scrolling on small screens */
	html, body { height: 100vh; overflow: hidden; }

	/* Ensure centered block fills viewport and stays centered */
	.center { height: 100vh; display: flex; flex-direction: column; justify-content: center; align-items: center; }

	body, .center, .center * {
		font-size: 10px !important;
		line-height: var(--line-height) !important;
		font-weight: 700;
	}

	.center h1 { font-size: 10px !important; }
	a#email-link, a#ig-link { font-size: 10px !important; }
	#cursor-counter { font-size: 10px !important; }
	.center > * { margin: 0 0 var(--v-gap) !important; }
}

