/* Font's */
@font-face {
	font-family: 'Overpass';
	font-weight: 400;
	src: url('../assets/fonts/Overpass-Regular.woff2') format('woff2');
}
@font-face {
	font-family: 'Overpass';
	font-weight: 700;
	src: url('../assets/fonts/Overpass-Bold.woff2') format('woff2');
}

/* Variables */
:root {
	--Mobile: 375px;
	--Desktop: 1440px;

	--Orange: hsl(25, 97%, 53%);
	--White: hsl(0, 0%, 100%);
	--LightGrey: hsl(217, 12%, 63%);
	--MediumGrey: hsl(216, 12%, 54%);
	--DarkBlue: hsl(213, 19%, 18%);
	--VeryDarkBlue: hsl(216, 12%, 8%);

	--Regular: 400;
	--Bold: 700;
}
/* responsive web desing */
html {
	font-size: 62.5%;
	box-sizing: border-box;
}
body {
	font-size: 16px; /* 1rem = 10px */
	font-weight: var(--Regular);
	font-family: 'Overpass';
	background-color: var(--VeryDarkBlue);
	color: var(--White);
	height: 100dvh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
/* model box */
*,
*:before,
*:after {
	box-sizing: inherit;
}
.main {
	background: radial-gradient(
		farthest-side at top center,
		hsl(215deg, 17%, 15%),
		hsl(215deg, 27%, 12%)
	);
	width: 90%;
	max-width: 400px;
	padding: 3rem;
	border-radius: 1.5rem;
}
.star__image {
	background-color: var(--DarkBlue);
	border-radius: 50%;
	padding: 1.4rem;
	margin-bottom: 1.3rem;
}
.main-heading {
	font-weight: var(--Bold);
	margin: 1rem 0;
}
.main__paragraph {
	color: var(--LightGrey);
	padding-bottom: 2rem;
}
.button {
	border: none;
	margin: 0;
	padding: 0;
	cursor: pointer;
}
.rating__container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 2rem 0;
}
.rating__container .button {
	width: 5rem;
	height: 5rem;
	border-radius: 50%;
	background-color: var(--DarkBlue);
	color: var(--LightGrey);
}
.rating__container .button:hover {
	background-color: var(--LightGrey);
	color: var(--White);
}
.rating__submit-button {
	width: 100%;
	padding: 1rem 0;
	background-color: var(--Orange);
	color: var(--White);
	border-radius: 5rem;
	text-transform: uppercase;
	font-weight: var(--Bold);
}
.rating__submit-button:hover {
	background-color: var(--White);
	color: var(--Orange);
}
@media (max-width: 375px) {
	.rating__container .button {
		width: 4rem;
		height: 4rem;
	}
}
@media (min-width: 1440px) {
	body {
		font-size: 1.8rem;
	}
}

.rating__container .active {
	background-color: var(--Orange);
	color: white;
}

.rating__container .active:hover {
	background-color: var(--Orange);
	color: white;
}
@keyframes shake {
	0% {
		transform: translateX(0);
	}
	25% {
		transform: translateX(-5px);
	}
	50% {
		transform: translateX(5px);
	}
	75% {
		transform: translateX(-5px);
	}
	100% {
		transform: translateX(0);
	}
}
.shake-element {
	animation: shake 0.3s;
	animation-fill-mode: forwards;
	animation-iteration-count: 1;
}
.errorMessage {
	text-align: center;
	margin-bottom: 1.5rem;
}

/* THANKS SECTION */
.thanks__image {
	margin: 0 auto 2rem auto;
}
.thanks__rating p {
	color: var(--Orange);
	border-radius: 2rem;
	display: inline-block;
	background-color: var(--DarkBlue);
	padding: 0.6rem 1.2rem 0.3rem 1rem;
	margin: 1rem auto 2rem auto;
}
.thanks__heading {
	margin: 0.5rem auto 1rem auto;
}
.thanks__paragraph {
	color: var(--LightGrey);
}
.thanks {
	text-align: center;
}
