:root {
	--main-color: #0076b4;
	--hover-color: #094d70;
	--text-color: #333;
	--body-font-size: 1rem;
	--background-color: #eaeaea;
	--font-family: Roboto, Arial, sans-serif;
	--input-border-color: #bbb;
	--content-box-background-color: #ddd;
	--input-border-radius: 4px;
	--input-padding: 8px;
	--input-focus-color: var(--main-color);
	--skeleton-color: #cacaca;
	--skeleton-glow: linear-gradient(-45deg, #cacaca 40%, #f0f0f0 50%, #cacaca 60%);
	--icon-color: #aaaaaa;
	--card-filled-color: #e8f5e9; /* Light green for filled cards */
}

body {
	font-family: var(--font-family);
	margin: 0;
	padding: 0;
	background-color: var(--background-color);
	color: var(--text-color);
	font-size: var(--body-font-size);
}

h1 {
	font-size: 3rem;
	color: var(--main-color);
	margin: 0.25em 0;
}

h2 {
	font-size: 2.25rem;
	color: var(--main-color);
	margin: 0.25em 0;
}

h3 {
	font-size: 1.75rem;
	color: var(--main-color);
	margin: 0.25em 0;
}

h4 {
	font-size: 1.25rem;
	color: var(--main-color);
	margin: 0.25em 0;
}

p {
	font-size: 1rem;
	line-height: 1.5;
	margin: 0.5em 0;
}

.center {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100vw;
	height: 100vh;
	margin: 0;
	padding: 0;
}

a {
	color: var(--main-color);
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

a.button,
button {
	padding: 10px 20px;
	margin-bottom: 10px;
	font-size: var(--body-font-size);
	color: #fff;
	background-color: var(--main-color);
	border: none;
	border-radius: 4px;
	cursor: pointer;
	transition: background-color 0.2s ease-in-out;
}

a.button:hover,
button:hover {
	background-color: var(--hover-color);
	text-decoration: initial;
}

button[disabled] {
	filter: opacity(0.5) saturate(0.75);
	cursor: not-allowed;
}

button[disabled]:hover {
	background-color: var(--main-color);
}
