@font-face {
    font-family: "IBM Plex Sans";
    src: local("IBM Plex Sans"), url("/ttf/IBM_Plex_Sans/IBMPlexSans-Medium.ttf") format("truetype");
}

body {
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	color: #fff;
	font-family: "IBM Plex Sans", Verdana, sans-serif;
	max-width: 75em;
	margin: auto;
}

::selection {
    background: #99f;
    color: #205;
    text-shadow: 1px 0 0 #dcf;
}

::-moz-selection {
    background: #99f;
    color: #205;
    text-shadow: 1px 0 0 #dcf;	
}

header, main, footer {
	background: radial-gradient(ellipse at right, #000d, #0006),
				radial-gradient(ellipse at left, #000d, #0006);
	margin: 10px;
	padding: 20px;
	border-radius: 2em 3px 2em 3px;
}

nav {
	background: #cc7;
	display: block;
	width: 70%;
	border-radius: 3px;
	letter-spacing: 2px;
	text-align: center;
}

nav > p {
	padding: 3px;
}

footer {
	color: #fff9;
	text-align: right;
}

a, .greyed {
	transition: color .6s;
}

a {
	color: #99f;
}

a:visited {
	color: #a4a;
}

a:hover {
	color: #bbf;
}

a:active {
	color: #dcf;
}

span.nospam {
	font-size: 0px;
}

.greyed {
	color: #fff9;
}

.greyed:hover, .greyed:active {
	color: unset;
}

.aside {
	font-size: 80%;
}

body#gallery {
	padding: 10px;
	max-width: 100em;
}

body.vbody {
	background: #234;
	background-image: url('/media/sgbback.png');
	background-repeat: no-repeat;
	background-position: center;
}

#gallery .wrapper {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
	gap: 10px;
	background: #2239;
	border-radius: 10px;
	padding: 10px;
}

#gallery .gi {
	background-color: #445;
	border: 5px outset #458;
	border-radius: 5px 0;
	width: 330px;
	height: 185px;
	margin: auto;
}

#gallery .vlink {
	display: block;
	padding: 0 5px 5px;
	width: 320px;
	height: 180px;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	text-shadow: 2px 2px 2px #000b;
	filter: brightness(.7);
	transition: ease-out .3s;
}

.vlink a {
	color: #fff;
	font-size: 1.6em;
	font-weight: bold;
	text-decoration: underline dotted #fff8 3px;
}

.rundate {
	font-size: 12px;
}

#gallery .vlink:hover {
	filter: brightness(1);
}

#gnav {
	margin: auto;
	color: #113;
	text-align: center;
}

#gnav a {
	font-weight: bold;
}