:root {
	--primary-color: #740078;
	--secondary-color: #CD57D1;
	--tertiary-color: #E181E4;
	--container-color: #F2B7F4;
	--game-board-color: #FDE6FD;
	--glow-duration: 2s;
	--transition-duration: 0.4s;
}

html,
body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	font-size: 18px;

	font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
}

/* #F2B7F4
#E181E4
#CD57D1
#BF30C4
#B60CBC
#95019A
#740078 */
h1,
p {
	margin: 0;
	padding: 0;
}

.container {
	background-color: var(--container-color);
	padding: 1rem;
	display: flex;
	flex-flow: column;
	height: calc(100dvh - 2rem);
}

.game-board {
	background-color: var(--game-board-color);
	flex-grow: 1;

	border: 0.5rem solid var(--tertiary-color);
	border-radius: 0.5rem;
	position: relative;

	display: flex;
	justify-content: center;
	align-items: center;
}

.score-board {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	font-size: 5vw;
	font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
	font-weight: bold;
	background-color: white;
	margin: 0.5rem -1rem;
	border-top: 1px solid #999;
	border-bottom: 1px solid #999;
	box-shadow: rgba(0, 0, 0, 0.1) 0rem 0.25rem 0.75rem;
}

.score-board>div:not(:first-child) {
	border-left: 1px solid #999;
}

.score-board>div {
	padding: 0.25rem 1rem;
	flex-basis: 0;
	flex-grow: 1;
}

.score-board .label {
	display: inline;
	font-weight: normal;
	font-size: 0.5em;
	padding-right: 0.25rem;
	text-transform: uppercase;
	color: #444;
}

.score-board .value {
	display: inline;
}

.dot {
	position: absolute;
	border-radius: 50%;
	background-color: red;
}

.play-button {
	display: inline-block;
	padding: 1rem 2.25rem;
	font-size: 1rem;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 0.1rem;
	text-decoration: none;
	position: relative;

	background: linear-gradient(45deg, var(--primary-color), var(--secondary-color), var(--tertiary-color));
	border-radius: 4rem;
	box-shadow: 0 0 1rem var(--secondary-color), 0 0 2rem var(--primary-color), 0 0 4rem var(--tertiary-color);
	animation: smoothGlow var(--glow-duration) infinite ease-in-out;
	transition: all var(--transition-duration) ease-in-out;
}

@keyframes smoothGlow {

	0%,
	100% {
		box-shadow: 0 0 1rem var(--secondary-color), 0 0 2rem var(--primary-color), 0 0 4rem var(--tertiary-color);
	}

	50% {
		box-shadow: 0 0 1.5rem var(--tertiary-color), 0 0 3rem var(--secondary-color), 0 0 5rem var(--primary-color);
	}
}

.results-modal {
	display: flex;
	flex-direction: column;
	align-items: center;

	background-color: #44444499;
	border: 0.25rem solid #CD57D1;
	border-radius: 1rem;
	padding: 1rem;
}