/* CSS for Christian's Bookmarks */

/* Color scheme */

:root {
	--meduni_darkblue: #111d4e;
	--meduni_lightblue: #5fb4e5;
	--meduni_lighterblue: #B5DCF1;
	--meduni_lightestblue: #E7F3FB;
	--meduni_darkgreen: #2B8386;
	--meduni_green: #2f8e91;
	--meduni_lightgreen: #84C9BC;
	
	color-scheme: light dark;
	
	--bg_color: light_dark(white, #111);
	--text_color: light-dark(black, var(--meduni_lightestblue));
	--accent_color: light-dark(var(--meduni_darkblue), var(--meduni_lightblue));
	--link_color: light-dark(var(--meduni_darkgreen), var(--meduni_green));
	--button_color: light-dark(white, #333);
	--shadow_color: light-dark(#CCC, black);
}

/* Layout */

body {
	font-family: Roboto, Helvetica, sans-serif;
	color: var(--text_color);
	background-color: var(--bg_color);
	max-width: 72em;
	padding: 0;
	margin: 0 0.5em;
	line-height: 1.2em;
}

header, nav, main, footer {
	margin: 0;
	padding: 0.5em;
}

header {
	margin-bottom: 1em;
	border-bottom: thin solid var(--accent_color);

}

@media (min-width: 45em)
{
	body {
		display: grid;
		gap: 0;
		grid-template-columns: minmax(20em, 1fr) 3fr;
		grid-template-areas: "head head"
		                     "nav main"
							 "foot main"
							 "none main";
	}
	
	header {
		grid-area: head;
		width: 20em;
	}
	
	nav {
		grid-area: nav;
		height: min-content;
	}
	
	main {
		grid-area: main;
	}

	footer {
		grid-area: foot;
		height: min-content;
	}
}

h1 {
	font-size: 1.5em;
	margin: 0.5em 0;
	color: var(--accent_color);
}

h2 {
	font-size: 1.25em;
	margin: 0.5em 0 1em 0;
	color: var(--accent_color);
}

nav li {
	background-color: var(--button_color);
	border: thin solid var(--link_color);
	border-radius: 1em;
	box-shadow: 0.2em 0.2em 0.1em var(--shadow_color);
	padding: 0.5em;
	margin-bottom: 0.6em;
	padding-left: 1.25em;
}

nav span::before {
	content: '› ';
	font-size: 1.25em;
}

a {
	text-decoration: none;
	color: var(--link_color);
}

a:hover {
	text-decoration: underline;
}

nav span, nav a {
	font-weight: 600;
}

ul {
	list-style-type: none;
	padding-left: 1.25em;
	margin: 0;
}

nav ul {
	padding: 0;
}

li {
	padding: 0;
	margin: 0.4em 0;
	line-height: 1.25em;
}

#linktotop {
	text-align: right;
}

#linktotop a {
	display: inline-block;
	text-align: center;
}

#linktotop a::before {
	content: "⮝";
	font-size: 2em;
	position: relative;
	top: -0.5em;
	left: 1.1em;
	border: thin solid;
	padding: 0.1em 0.2em 0.6em 0.2em;
	border: thin solid var(--link_color);
	border-radius: 0.2em;
	box-shadow: 0 0.25em 0.2em 0.1em var(--link_color);
}

footer {
	margin: 0.5em;
	font-style: italic;
	font-size: 0.8em;
}
