body {
	--accent-colour: #13e741;
	--accent-foreground: #000;
	--background-light: #081d0f;
}

#main-holder {
	display: flex;
	width: 100%;
	height: calc(100vh - 48px);
	padding: 16px;
}

#main-holder > div {
	border: solid 4px var(--accent-colour);
	background-color: #000;
}

#folder-details {
	width: 358px;
	margin-right: 16px;
	overflow-y: auto;
	overflow-x: hidden;
}

#folder-details > img {
	width: 300px;
	height: 300px;
	margin: 25px;
	margin-bottom: 16px;
}

#folder-details > h1 {
	margin: 0 16px;
}

#folder-details > p {
	margin: 16px;
}

#folder-contents {
	width: 0;
	flex-grow: 1;
	overflow-x: hidden;
}

#folder-contents > main {
	padding: 0 16px;
}

#folder-nav {
	background-color: var(--accent-colour);
}

#folder-nav a {
	color: #000;
	font-size: 16pt;
	display: inline-block;
	padding: 6px 4px;
	user-select: none;
}

#folder-nav a:first-of-type {
	padding-left: 10px;
}

#folder-nav a:not(:last-of-type) {
	padding-right: 0;
}

#folder-nav a:not(:last-of-type)::after {
	content: ">";
	margin-left: 8px;
}

#folder-nav a:hover, #folder-nav a:focus {
	background-color: #fff;
	text-decoration: none;
}

#folder-items {
	display: flex;
	flex-wrap: wrap;
}

#folder-items a {
	width: 200px;
	display: flex;
	justify-content: space-around;
	align-items: center;
	flex-direction: column;
	padding: 16px;
	text-decoration: none;
}

#folder-items.calculated-width a {
	width: var(--width);
	flex-grow: 0;
}

#folder-items > a:hover {
	background-color: var(--accent-colour);
	color: #000;
}

#folder-items > a > img {
	width: 150px;
	height: 150px;
	object-fit: contain;
}

#folder-items > a > p {
	margin-bottom: 0;
}

.character-table {
	margin-top: 16px;
	display: flex;
	flex-direction: column;
	width: 350px;
}

.character-table > div {
	width: 350px;
	display: flex;
	flex-direction: row;
}

.ct-title {
	width: 0;
	flex-grow: 1;
	background-color: var(--accent-colour);
	font-weight: bold;
	color: black;
	padding: 4px;
	padding-bottom: 8px;
}

.ct-title::selection {
	background-color: #ff7622;
}

.ct-content {
	width: 0;
	flex-grow: 2;
	padding: 4px;
	border-bottom: solid 4px var(--accent-colour);
}

.character-table > div:first-child > .ct-title {
	padding-top: 8px;
}

.character-table > div:first-child > .ct-content {
	border-top: solid 4px var(--accent-colour);
}



@media (max-width: 900px) {
	#main-holder {
		flex-direction: column;
		height: fit-content;
	}

	#folder-details {
		width: calc(100vw - 32px);
	}

	#folder-details > img {
		width: calc(100vw - 32px - 58px);
		height: calc(100vw - 32px - 58px);
	}

	#folder-contents {
		width: calc(100vw - 32px);
	}

	.character-table {
		width: 100%;
	}

	.character-table > div {
		width: 100%;
	}
}
