body {
	font-family: Arial, sans-serif;
	margin: 0;
	background-color: #f8f8f8;
}

.container {
	display: flex;
	background-color: #ffffff;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.menu {
	width: 13%;
	min-width: 210px;
	padding: 20px;
	background-color: #2c3e50;
	/* Dark Blue */
	color: #ecf0f1;
	/* Light Gray */
	position: relative;
}

.menu h2 {
	margin-bottom: 10px;
	color: #ecf0f1;
	/* Light Gray */
}

.menu ul {
	list-style-type: none;
	padding: 0;
}

.menu li {
	margin-bottom: 10px;
	cursor: pointer;
	padding: 10px;
	border-radius: 5px;
	transition: background-color 0.3s ease;
}

.menu li:hover:not(.active) {
	background-color: #3498db;
	/* Light Blue */
}

.menu li.active {
	background-color: #5b6469;
	/* Light Blue */
}

/* Subcategory styling */
.subcategory {
	padding-left: 15px;
}

.subcategory li {
	margin-bottom: 5px;
	margin-top: 5px;
	cursor: pointer;
	padding: 8px;
	border-radius: 3px;
	transition: background-color 0.3s ease;
}

.subcategory li:hover:not(.active) {
	background-color: #2980b9;
	/* Darker Blue */
}

.subcategory li.active {
	background-color: #3498db;
	/* Light Blue */
}

.content {
	flex-grow: 1;
	padding: 20px;
	min-height: 100vh;
	/* Minimum height of the content section to fill the whole viewport */
}

/* Line to separate menu and content */
.menu:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 2px;
	height: 100%;
	background-color: #3498db;
	/* Light Blue */
}

/* Initially hide subcategories */
.subcategory {
	display: none;
}

/* Display subcategories when their parent is active or when subcategory item is active */
.menu li.active .subcategory {
	display: block;
}

.subcategory:has(> li.active) {
	display: block;
}
