
* {
	box-sizing: border-box;
}

html {
	scrollbar-color: black var(--yearColour);
}

body {
	font: 100% Source Code Pro, Inconsolata, Menlo, monospace;
	background: #111;
	color: white;
	margin: 0;
	padding: 0;
}

a {
	color: inherit;
}

h1 {
	background: var(--yearColour);
	padding: 0.5rem;
	margin:0;
	padding-bottom: 0.2rem;
	position: sticky;
	top: 0;
}

body > aside {
	padding: 0.1rem 0.5rem;
	border-right: 1em solid var(--yearColour);
	position: sticky;
	background: #111;
	top: 2.75rem;
	display: flex;
	justify-content: space-between;
}

main {
	display: grid;
	grid-template-columns: repeat(auto-fit,110px);
	gap: 0.5rem;
	row-rule: 1px solid var(--yearColour);
	border-right: 1em solid var(--yearColour);
}

div {
	text-align: center;
	align-content: center;
}


div.overlay {
	position: fixed;
	margin: auto;
	top: 5%;
	left: 5%;
	bottom: 5%;
	right: 5%;
	background-color: rgba(0,0,0,0.9);
	
	& aside {
		margin: 0 auto;
		background: var(--yearColour);
		border-right: none;
		padding: 0;
		position: relative;
		height: 2rem;
		max-width: 800px;
		
		& > * {
			position: absolute;
			bottom: 0.6rem;
			left: 0;
		}
		
		& span {
			font-size: 12px;
			left: 1em;
			z-index: 1;
			
			
		}
		
		& a {
			width: 100%;
			font-size: 16px;
			font-weight: bold;
		}	
	}
	
	& img {
		max-width: 100%;
		max-height: calc(100% - 2rem);
		display: block;
		margin: 0 auto;
	}
	
	& > span {
		position: absolute;
		top: 50%;
		font-size: 5rem;
		cursor: pointer;
		border-radius: 100px;

		&:hover {
			background: var(--yearColour);
		}
	}
	
	& span#left {
		left: 1rem;
	}
	& span#right {
		right: 1rem;
	}
	
	& span#close {
		right: 1em;
		top: 1em;
		border-radius: 100px;
		font-size: 2rem;
		width: 2rem;
	}
}

