/* Global styles */
:root {
	--soft-red: hsl(10, 79%, 65%);
	--cyan: hsl(186, 34%, 60%);
	--dark-brown: hsl(25, 47%, 15%);
	--medium-brown: hsl(28, 10%, 53%);
	--cream: hsl(27, 66%, 92%);
	--very-pale-orange: hsl(33, 100%, 98%);
}

.dm-sans-normal {
	font-family: 'DM Sans', serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}

.dm-sans-bold {
	font-family: 'DM Sans', serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
}

body {
	font-family: 'DM Sans', serif;
	background-color: var(--cream);
	color: var(--dark-brown);
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: column;
	width: 98vw;
	height: 98vh;
	line-height: 1;
}
h1 {
	font-size: 2rem;

	margin: 0.5rem 0;
}

h2 {
	font-size: 1.5rem;

	margin: 0.5rem 0;
}

h5 {
	font-size: 1rem;

	margin: 0.5rem 0;
}

small {
	font-size: 0.8rem;

	margin: 0.5rem 0 !important;
}

.content_container {
	display: flex;
	flex-direction: column;
	align-items: center;

	width: 50%;
	height: 70%;
	padding-top: 5rem;
}

.balance {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	background-color: var(--soft-red);
	border-radius: 10px;
	width: 100%;
	height: 15%;
	margin-bottom: 1rem;
	padding: 1rem;
	color: white;
	line-height: 1;
}

.balance_text {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.chart {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	background-color: var(--very-pale-orange);
	border-radius: 10px;
	width: 100%;
	height: 70%;
	padding: 1rem;
}

.chart_header {
	width: 100%;
}

.chart_container {
	position: relative;
	height: 20rem;
	width: 100%;
}

#myChart {
	position: absolute;
	width: 100%;
	height: 50%;
	border-bottom: 1px solid var(--medium-brown);
}

.totals {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-direction: row;
	width: 100%;
	height: 30%;
	padding-bottom: 1rem;
}

.total {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.attribution {
	font-size: 11px;
	text-align: center;
	height: 10%;
}
.attribution a {
	color: hsl(228, 45%, 44%);
}

/* Mobile styles */

@media (max-width: 375px) {
	.content_container {
		width: 85%;
	}
}
