*
{
	font-family			: system-ui, "Helvetica Neue", "Helvetica", "Arial", "sans-serif";
	line-height			: 1.4705882353;
	letter-spacing			: -0.022em;
	font-size			: 14pt;
}

:root
{
	color-scheme			: light dark;
}

html, body
{
	top				: 0px;
	left				: 0px;
	color				: #383838;
	font-weight			: 500;
}

html, body, #container
{
	height				: 100%;
}

body > #container
{
	height				: auto;
	min-height			: 100%;
	margin-left			: 0px;
	margin-right			: 0px;
	backdrop-filter			: blur(42px);
	-webkit-backdrop-filter		: blur(42px);
	background-color		: rgba(255, 255, 255, 0.42);
}

html, body, h1, h2, h3, h4, div, p, input, select, pre
{
	margin				: 0px;
	padding				: 0px;
}

.nomargin
{
	margin-top			: 0px;
	margin-bottom			: 0px;
}

code
{
	color				: #55e213;
	background-color		: black; 
	padding				: 3px;
	margin				: .5em 0px .5em 0px;
}

ul
{
	margin-block-start		: 0px;
	margin-block-end		: 0px;
}

ul, nav.toc ul
{
	padding				: 0px 0px 0px 1em;
}

h1, h2, h3, h4
{
	letter-spacing			: -1px;
	padding-bottom			: .5em;
	color				: #855db3;
	font-weight			: 700;
}

h1
{
	font-size			: 1.7em;
}

h2
{
	font-size			: 1.6em;
}

h3
{
	font-size			: 1.6em;
}

h4
{
	font-size			: 1.5em;
}

hr
{
	background-color		: #050505;
	color				: black;
}

ul
{
	list-style-type			: square;
}

audio
{
	display				: block;
}

video
{
	width				: 100%;
	height				: auto !important;
	margin-bottom			: 25px;
	border				: 1px solid black;
}

video.vidmh100
{
	width				: 25%;
}

.galleryPic video
{
	width				: 100% !important;
	max-width			: 100% !important;
}

/* Fix the #hashmark targets as we have a fixed header */
:target:before
{
	content				: "";
	display				: block;
	height				: 3em;
	margin				: -2em 0 0;
}

hidden
{
	visibility			: hidden;
}

figure
{
	margin				: 0px;
	text-align			: center;
}

.rightpic a, figcaption
{
	color				: black;
}

table thead th
{
	position			: sticky;
	top				: 0px;
}

nav ul
{
	margin				: 0px;
	padding				: 0px;
}

nav ul li a, footer ul li a
{
	border-bottom			: 0px solid transparent;
	padding-top			: 5px;
	padding-bottom			: 5px;
}

nav ul li, nav ul li:hover
{
	line-height			: initial;
}

nav.toc ul li, nav.toc ul li:hover
{
	padding-top			: 3px;
	padding-bottom			: 0px;
}

.menu ul li a
{
	display				: block;
	text-decoration			: none;
	border-bottom			: 2px solid transparent;
}

/* add a flavor of purple to the first menu */
.menu ul:first-child li
{
	font-weight			: 500;
}

.menu ul li a:hover
{
	background-color		: rgba(132, 93, 178, 0.5);
	text-decoration			: none;
}

nav.top
{
	position			: fixed;
	right				: .5em;
	bottom				: 3em;
	padding				: 3px;
	background-color		: rgba(248, 249, 250, 0.63);
	box-shadow			: 0 1px 2px #fff, 0 -1px 1px #666, inset 0 -1px 1px rgba(0,0,0,0.5), inset 0 1px 1px rgba(255,255,255,0.8);
}

nav.top a
{
	text-decoration			: none;
	border-bottom			: none;
}

nav.toc
{
	float				: right;
	position			: initial;
	min-width			: 150px;
	max-width			: 250px;
	font-size			: small;
	margin				: 2em;
	padding				: .5em;
	border				: 2px solid #427;
	background-color		: #f8f8f8;
}

nav.toc p
{
	color				: #a5a5a5;
	margin-bottom			: 0px;
	text-align			: center;
	font-weight			: bold;
}

nav.toc ul li
{
	color				: #888;
	display				: list-item;
	list-style-type			: square;
}

nav.toc ul li a:hover
{
	text-decoration			: underline;
	border-bottom			: none;
}

/* Force no lines, used to hide the underlines from <a href="...">..</a>'s */
.nolines, .nolines:hover, a.logotop
{
	text-decoration			: none;
	border-bottom			: none;
	background-color		: transparent;
}

a.logotop
{
	color				: #a8bdae;
	display				: inline-block;
	margin-top			: .5em;
}

a.logotop:hover
{
	color				: #314536;
}

a.logotop img.round
{
	width				: 60px;
	border-radius			: 30px;
}

.projpic, .projpic:hover, .fampic, .fampic:hover, .personpic, table.team tr td img
{
	text-align			: center;
	font-size			: x-small;
	background-color		: #a8bdae;
	border				: 3px solid #a8bdae;
}

table.team tr td img
{
	border-radius			: 150px;
}

table.team tr td:nth-child(2)
{
	border				: 1px solid #bbbbbb;
} 

tr.selected
{
	background-color		: #d4cde2 !important;
}

.projpic, .projpic:hover, .fampic, .fampic:hover, .personpic, .rightpic, .rightpic:hover
{
	margin				: 20px;
}

.projpic img
{
	width				: 250px;
}

.gallerylistpic
{
	margin				: 20px;
}

.oldgalleryfloat
{
	float				: left;
	text-align			: center;
	width				: 200px;
	min-height			: 200px;
	background-color		: #eeeeee;
	border				: 1px solid white;
	padding-top			: 10px;
}

table.team tr td p
{
	margin-top			: 20px;
}

table.cruises tbody tr th
{
	width				: 10em;
}

table.cruises tbody tr td table tbody tr td
{
	width				: 20em;
}

table.hosts tbody tr td
{
	white-space			: nowrap;
}

table.alice tbody tr td:nth-child(20n+1)
{
	max-width			: 50%;
}

table.presentations tbody tr td:nth-child(20n+7), table.publications tbody tr td:nth-child(20n+5), table.publications tbody tr td:nth-child(20n+6), table.nowrap
{
	white-space			: nowrap;
}

table.publications tbody tr td:nth-child(20n+1)
{
	text-align			: center;
}

table.presentations tbody tr td ul, table.publications tbody tr td ul
{
	margin				: 0px;
	padding				: 0px;
}

table.presentations tbody tr td ul li, table.publications tbody tr td ul li
{
	list-style-position		: inside;
}

table.presentations tbody tr td ul li:before
{
	content				: "";
	display				: inline-block;
	margin-left			: -10px;
}

table.presentations tbody tr td:nth-child(20n+8) img, table.presentations tbody tr td:nth-child(20n+9) img
{
	border				: 1px solid black;
	max-width			: 100px;
}

table.presentations tbody tr td
{
	vertical-align			: top;
}

table.publications tbody tr td ul li
{
	list-style-type			: none;
	list-style-position		: initial;
	margin-bottom			: 5px;
}

table.publications tbody tr td ul li a
{
	text-decoration			: none;
	border-bottom			: none;
	padding				: 3px;
	background-color		: rgba(248, 249, 250, 0.63);
	display				: inline-block;
	min-width			: 100px;
	max-width			: 500px;
}

.projpic, .projpic:hover, .fampic, .fampic:hover, .personpic, .rightpic, .right iframe, .logopic, .galleryClose, .button
{
	border-radius			: 10px;
	box-shadow			: 2px 5px 12px #555555;
}

.galleryPic
{
	display				: block;
	text-align			: center;
	background-color		: black;
	color				: white;
	font-weight			: bold;
	font-size			: medium;
	border				: 15px solid black;
	width				: 85%;
	height				: 85%;
}

.galleryPic img
{
	margin				: auto;
	height				: auto;
}

a.galleryDownload
{
	border				: none;
	margin				: 30px;
	text-align			: right;
	width				: 50px;
	height				: 50px;
	background-image		: url(/gfx/download-green.png);
	background-repeat		: no-repeat;
	background-size			: cover;
}

a.galleryDownload:hover
{
	background-image		: url(/gfx/download-blue.png);
}

.projpic:hover, .fampic:hover, a.rightpic:hover, div.galleryList .personpic:hover
{
	border				: 3px solid #eeeeee;
	background-color		: #eeeeee;
}

.clearboth, .projpix
{
	clear				: both;
	display				: inline-block;
}

.rightpic
{
	float				: right;
	clear				: right;
	padding				: 1em;
	background-color		: white;
	border-radius			: initial;
	text-align			: center;
	font-size			: small;
	transform			: rotate(-1deg);
}

main article:nth-child(odd) figure.rightpic
{
	transform			: rotate(2deg);
}

.rightpic img
{
	display				: block;
}

.rightpic figcaption
{
	padding-top			: .5em;
	display				: inline-block;
}

.rightpic img.country
{
	float				: right;
	margin-top			: .5em;
}

.right
{
	float				: right;
}

.right, .floatright, table.right tbody tr td
{
	text-align			: right;
}

.floatright
{
	float				: right;
}

.right iframe
{
	float				: right;
	width				: 300px;
	height				: 200px;
	border				: 3px solid #a8bdae;
}

.left, table.right tbody tr td.left
{
	text-align			: left
}

.textright
{
	text-align			: right;
}

div.picarchive, div.picarchive h2
{
	clear				: both;
}

div.picarchive img
{
	width				: 80%;
	max-width			: 512px;
	float				: left;
	margin				: 1px;
	border				: 1px solid black;
}

.mini img
{
	height				: 8em;
}

a.mini
{
	border-bottom			: none;
}

a.mini:hover
{
	border-bottom			: none;
}

.projpic
{
	width				: 250px;
	float				: left;
}

.floatleft, .fampic
{
	float				: left;
}

a.fampic img
{
	height				: 150px;
}

p
{
	margin-bottom			: 1em;
}

/*
 * - No image borders please, it makes them ugly
 * - Max width of an image is the width of the screen
 */
img
{
	border				: none;
	max-width			: 100%;
}

/* But we want a little border around our flags */
img.country
{
	border				: 1px solid black !important;
	width				: 16px !important;
	height				: 16px !important;
	max-width			: initial !important;
}

span.country
{
	font-size			: 1.7em;
}

footer a.country img
{
	width				: 10px !important;
	height				: 10px !important;
	opacity				: 0.5;
}

footer a.country
{
	padding				: 0px;
}

img.hat
{
	width				: 16px;
	height				: 16px;
}

img.dot
{
	width				: 24px;
	height				: 24px;
}

.halfwidth
{
	display				: inline-block;
	width				: 400px;
	margin-right			: 20px;
}

@media all
{
	.printOnly
	{
		display			: none;
	}
}

.logo, .logopic
{
	color				: #a8bdae;
	text-decoration			: none;
	border-bottom			: none;
	background-color		: transparent;
}

.logo
{
	font-size			: 150px;
	font-family			: "serif";
}

.logopic
{
	font-size			: 150px;
	float				: right;
	border				: 3px solid #a8bdae;
	margin				: 10px;
	padding				: 10px;
	background-color		: #fafafa;
}

a.logo:hover
{
	text-decoration			: none;
	background-color		: transparent;
	border-bottom			: none;
	color				: #314536;
}

header.org
{
	width				: 100%;
	overflow			: auto;
	padding-bottom			: 20px;
}

header.org div:first-child
{
	width				: 15em;
	height				: 5em;
	text-align			: center;
	font-size			: large;
	border				: 1px solid black;
	color				: white;
	background-color		: #383838;
	background-image		: linear-gradient(#eeeeee, #000000);
	padding-top			: 20px;
	text-transform			: uppercase;
	display				: inline-block;
	margin-left			: 0px;
}

header.org div:first-child::first-line
{
	font-size			: x-large;
}

header div
{
	margin-left			: 2em;
	display				: inline-block;
	white-space			: nowrap;
}

header.org div:nth-child(2)::first-line
{
	font-size			: large;
	font-weight			: bold;
}

header.logotop
{
	position			: absolute;
	right				: 15px;
	top				: 5px;
	font-size			: 30px;
	background-color		: transparent;
}

.slogan
{
	font-size			: small;
	font-style			: italic;
	padding-top			: 10px;
	padding-bottom			: 10px;
}

th, td, tr
{
	text-align			: left;
}

table.details
{
	text-align			: left;
}

table.details tbody th, table.details td, table tr:nth-child(even), table tr:nth-child(odd)
{
	background-color		: transparent;
}

table.details img.country
{
	float				: right;
}

.detnom
{
	color				: black;
	font-size			: medium;
	font-weight			: bold;
}

.detpgp
{
	font-family			: Tahoma, monospace;
	font-size			: small;
}

.botinfo th
{
	font-size			: xx-small;
	text-align			: right;
	color				: #a8bdae;
}

table
{
	padding-bottom			: 10px;
	color				: #666666;
	border-collapse			: collapse;
}

table tr:nth-child(even)
{
	background-color		: #fefefe;
}

table tr:nth-child(odd)
{
	background-color		: #f8f8f8;
}

table tr th
{
	color				: black;
	background-color		: #a8bdae;
	vertical-align			: top;
}

table tr th, table tr td
{
	padding				: 4px;
}

table.scrolling
{
	width				: 100%;
}

.botinfo table
{
	margin				: auto;
}

.botinfo
{
	padding-top			: 5px;
	float				: left;
	width				: 33%;
}

div.botinfo table tbody tr td b
{
	color				: black;
}

nav
{
	font-weight			: 300;
	z-index				: 1042;
	position			: fixed;
	margin-left			: 0px;
	margin-right			: 0px;
	background-color		: rgba(255, 255, 255, 0.95);
}

nav.slider
{
	border-bottom			: none;
}

nav ul li.sel a
{
	color				: black;
	border-bottom			: 2px solid #5da370;
}

nav.menu ul li.sel a
{
	color				: white;
}

nav.menu ul li.sel a
{
	color				: black;
}

nav ul:first-child li.sel a
{
	border-bottom			: 2px solid purple;
}

nav ul li, nav ul li.sel, footer ul li
{
	display				: inline-block;
	list-style			: none;
	list-style-image		: none;
}

footer ul
{
	margin				: 0px;
	margin-right			: 30px;
	padding-bottom			: 5px;
}

#container
{
	height				: 100%;
	position			: relative;
	background-color		: white;
	color				: #333;
}

#receptacle
{
	position			: relative;
	padding-top			: 4.5em;
	padding-bottom			: 3em;
	margin-left			: 1em;
	margin-right			: 1em;
}

.gallery main
{
	padding				: 0px;
	margin				: 0px;
}

.gallery footer
{
	display				: none;
}

html.gallery, .gallery body
{
	background-color		: white;
}

main:after
{
	content				: "";
	display				: table;
	clear				: both;
}

.center
{
	text-align			: center;
}

footer
{
	clear				: both;
	position			: relative;
	z-index				: 10;
	margin-top			: -5em;
	text-align			: right; 
	width				: 100%;
	background-color		: #427;
	font-size			: xx-small;
}

.copyright a
{
	color				: #cccccc;
}

.bold
{
	font-weight			: bold;
}

.cooppic
{
	float				: right;
	width				: 100px;
	margin-right			: 10px;
}

.galleryBox
{
	position			: absolute;
	top				: 0px;
	left				: 0px;
	right				: 0px;
	bottom				: 0px;
	background			: black;
}

.galleryList
{
	float				: left;
	width				: 15%;
	height				: 100%;
	background			: black;
	overflow			: scroll;
}

.galleryClose
{
	margin				: 5px;
	border				: 1px solid #444444;

	position			: absolute;
	right				: 0px;
	top				: 0px;
	z-index				: 1000;

	text-align			: center;
	width				: 42px;
	height				: 42px;
	border-radius			: 21px;

	font-size			: xx-large;

	background-color		: #ec9592;
	color				: white;
}

.galleryClose:hover
{
	background-color		: red;
	color				: white;
}

.button
{
	margin-right			: 15px;
	min-width			: 10px;
	min-height			: 10px;
	border				: 1px solid #444444;
}

.small
{
	font-size			: xx-small;
}

/* Album */

a.album_prev
{
	float				: left;
}

a.album_prev:after, a.album_next:after
{
	position			: absolute;
	content				: "";
	width				: 142px;
	height				: 100px;
	z-index				: 2;
	opacity				: 0.7;
}

a.album_prev:after
{
	background			: url(/gfx/prev.png) no-repeat;
	background-position-y		: 50%;
	left				: 60px;
}

a.album_prev img, a.album_next img
{
	width				: 142px;
}

a.album_next
{
	float				: right;
}

a.album_next:after
{
	background			: url(/gfx/next.png) no-repeat;
	background-position-y		: 50%;
	margin-left			: -90px;
}

a.album_prev, a.album_next
{
	border				: 1px solid #666666;
	background			: #aaaaaa;
}

figcaption > ul > li
{
	display				: inline-block;
	list-style			: none;
	list-style-image		: none;
}

#map-container
{
	border-top		: 3px solid #427;
	border-bottom		: 3px solid #427;
	margin-bottom		: 20px;
	width			: 100%;
}

#map
{
	width			: 100%;
	min-width		: 400px;
	min-height		: 600px;
}

@media screen and (max-height: 600px)
{
	#map
	{
		width		: 90%;
		height		: 400px;
		min-width	: 200px;
		min-height	: 300px;
	}
}

#mapsctrl
{
	background-color	: white;
	height			: 75px;
	border			: 1px solid black;
}

#mapsctrl table thead tr th input
{
	margin-right		: 5px;
}

#mapsctrl input
{
	height			: initial;
}

#mapsctrl button
{
	float			: right;
	top			: 0px;
}

#mapsctrl thead, #mapsctrl tbody
{
	display			: block;
}

#mapsctrl table tbody
{
	overflow		: auto;
	max-height		: 39px;
}

#mapsctrl table tbody tr td:last-child
{
	cursor			: zoom-in;
	width			: 155px;
}

.noselect, #mapsctrl
{
	-webkit-touch-callout	: none;
	-webkit-user-select	: none;
	 -khtml-user-select	: none;
	   -moz-user-select	: none;
	    -ms-user-select	: none;
	        user-select	: none;
}

#table-scroll
{
	height			: 250px;
	overflow		: auto;
	border-top		: 3px solid #427;
	border-bottom		: 3px solid #427;
}

#table-wrapper
{
	width			: 100%;
	margin-bottom		: 20px;
}

#table-scroll > ul
{
	columns			: 3;
}

#table-scroll > ul > li
{
	list-style-type		: none;
	padding-bottom		: 1em;
	break-inside		: avoid;
}

nav ul li a, footer ul li a
{
	text-decoration		: none;
	border-bottom		: none;
	padding			: 0px 5px 0px 5px;
	color			: #555555;
}

footer ul li a
{
	color			: white;
}

.menu ul li a.brand
{
	font-size		: 1.2em;
}

.menu li
{
	display			: inline-block;
}

nav div.navbar-header
{
	visibility		: hidden;
	display			: none;
}

.navbar-checkbox
{
	display			: none;
}

.navbar-handle
{
	display			: none;
	cursor			: pointer;
	position		: relative;
	font-size		: 45px;
	padding			: .5em 0;
	height			: 0;
	width			: 1.6666666666666667em;
}

.navbar-handle:before, .navbar-handle:after
{
	position		: absolute;
	left			: 0;
	right			: 0;
	content			: ' ';
}

nav.menu .rainbow
{
	content			: '';
	position		: absolute;
	top			: 0px;
	left			: 0px;
	height			: 5px;
	width			: 100%;
	background		: repeating-linear-gradient(to right, #61c2e4, #6599e2, #442277, #442277, #442277, #c49cdf, #db9dbe,  #f0766b, #fad071, #f7fdca, #c4e17f);
}

.menu
{
	top			: 0;
	left			: 0;
	right			: 0;
	padding-top		: 10px;
	padding-bottom		: .7em;
	padding-left		: 20px;
	padding-right		: 10px;
	color			: #999999;
	background-color	: white;
	background-color	: rgba(255, 255, 255, 0.95);
	min-height		: 3.5em;
	border-bottom		: 2px solid #008000;
}

.menu .navbar-handle
{
	position		: absolute;
	font-size		: 1.2em;
	top			: 0.6em;
	left			: 12px;
	z-index			: 10;
}

@media (max-width: 810px)
{
	header.org
	{
		visibility	: hidden;
		display		: none;
	}

	.menu ul
	{
		max-height	: 0;
		overflow	: hidden;
		padding-left	: 2.2em;
		padding-top	: 1em;
		display		: none;
	}

	.menu li
	{
		visibility	: hidden;
		display		: block;
		border		: none;
		margin-right	: 4em;
	}

	.menu ul li a
	{
		display		: block;
	}

	.menu .navbar-handle
	{
		display		: block;
		top		: 1em;
	}

	nav
	{
		margin-left	: 0px;
		margin-right	: 0px;
		padding-left	: 0px;
	}

	#navbar-checkbox:checked + nav.menu
	{
		z-index		: 1000;
	}

	#navbar-checkbox:checked + .menu ul
	{
		max-height	: 300px;
		overflow	: inherit;
		display		: block;
	}

	#navbar-checkbox:checked + .menu li
	{
		visibility	: visible;
		display		: block;
	}

	.navbar-handle
	{
		-webkit-touch-callout	: none;
		-webkit-user-select	: none;
		 -khtml-user-select	: none;
		   -moz-user-select	: none;
		    -ms-user-select	: none;
		        user-select	: none;
	}

	.navbar-handle,
	.navbar-handle:before,
	.navbar-handle:after
	{
		border-top		: 0.37em solid #427;
	}

	.navbar-handle:before
	{
		top			: 0.2666666666666666em;
	}

	.navbar-handle:after
	{
		top			: 0.8888888888888888em;
	}

	#navbar-checkbox:checked .navbar-handle,
	#navbar-checkbox:checked .navbar-handle:before,
	#navbar-checkbox:checked .navbar-handle:after
	{
		border-top	: 0.27em solid #427 !important;
	}


	#navbar-checkbox:checked + nav div.navbar-header
	{
		padding-top	: 20px;
	}

	nav div.navbar-header
	{
		visibility	: visible;
		display		: block;
		width		: 100%;
		text-align	: center;
		z-index		: 20;
		text-transform	: none;
		color		: white;
		font-size	: x-large;
		margin-top	: .5em;
	}

	nav.toc
	{
		width		: 90%;
		max-width	: initial;
		float		: none;
		margin		: 10px;
	}

	nav.toc p
	{
		text-align	: initial;
	}

	article
	{
		border-bottom	: 2px solid #a8bdae;
	}

	p, h1, h2, h3, h4, h5
	{
		margin-left	: 5px;
		margin-right	: 5px;
		margin-top	: 10px;
		margin-bottom	: 5px;
		padding		: 0px;
	}

	#container, #receptacle, main, .projpic, header.logotop
	{
		margin-left	: 0px;
		margin-right	: 0px;
		margin-top	: 0px;
		padding-left	: 0px;
		padding-right	: 0px;
	}

	.projpic
	{
		width		: 100%;
		border-radius	: initial;
		border		: none;
		color		: white;
		background-color: black;
	}

	.projpic img
	{
		width		: 100%;
	}

	.rightpic
	{
		border		: none;
		margin-left	: 0px;
		margin-right	: 0px;
		border-radius	: initial;
	}

	#table-scroll > ul
	{
		columns		: 1;
	}
}

ul.sideboxes
{
	display			: flex;
	padding			: 0px;
}

ul.sideboxes > li
{
	display			: inline-block;
	overflow		: auto;
	color			: black;
	background-color	: #eeebf7;
	border			: 2px solid #548;
	margin-right		: 20px;
}

ul.sideboxes > li > h2
{
	text-align		: center;
	color			: white;
	padding			: 5px;
	background-color	: #548;
}

ul.sideboxes > li > p
{
	padding			: 10px;
	margin			: 0px;
	display			: inline-block;
	clear			: both;
	border-bottom		: 1px solid #548;
	width			: 100%;
}

ul.sideboxes > li > ul
{
	padding-top		: 10px;
	padding-bottom		: 10px;
}

/* hide the side-bar on small screens */
@media (max-width: 810px)
{
	ul.sideboxes
	{
		display		: inline-block; 
	}

	ul.sideboxes > li > h2
	{
		margin-left	: 0px;
		margin-right	: 0px;
		margin-top	: 0px;
		margin-bottom	: 0px;
	}

	ul.sideboxes > li
	{
		clear		: left;
		display		: inline-block;
		width		: 100%;
		height		: initial;
	}
}

p.slogan
{
	font-size		: large;
}

div.gallerymenu a
{
	padding-left		: 5px;
	padding-right		: 5px;
	display			: block;
	text-decoration		: none;
	font-size		: small;
	overflow		: hidden;
	white-space		: nowrap;
}

.gallery a:hover
{
	text-decoration		: none;
	background-color	: #d4cde2;
}

.galleryselect a, .galleryselect
{
	background-color	: #a8bdae;
	font-size		: large;
	display			: initial;
	border-bottom		: none;
}

/* gallery (^) */

/* ribbon (v) */

.ribbon
{
	background-color	: #aa0000;
	overflow		: hidden;
	white-space		: nowrap;

	/* top right corner */
	position		: absolute;
	right			: -70px;
	top			: 70px;
	width			: 400px;
	z-index			: 1000;

	/* 45 deg ccw rotation */
	transform		: rotate(45deg);

	/* shadow */
	box-shadow		: 0 0 10px #888;
}

.ribbonlogo
{
	margin-right		: 120px !important;
}

.ribbon a, .ribbon div
{
	border			: 1px solid #ffaaaa;
	color			: #ffffff;
	display			: block;
	font			: bold 81.25% 'Helvetica Neue', Helvetica, Arial, sans-serif;
	margin			: 1px 0;
	padding			: 10px 50px;
	text-align		: center;
	text-decoration		: none;
	text-shadow		: 0 0 5px #444;
}

.ribbon a:hover
{
	background-color	: #880000;
}

/* ribbon (^) */

.gallery body > #container
{
	height			: initial;
	min-height		: 100%;
}

.gallery body > #container, .gallery #receptacle
{
	margin			: 0px;
	padding			: 0px;
}

div.gallerymenu
{
	position		: fixed;
	top			: 0px;
	left			: 0px;
	width			: 180px;
	background-color	: #a8bdae;
	color			: #000000;
	font-size		: small;
	height			: 100%;
	overflow		: scroll;
}

div.gallerymenu ul
{
	padding			: 0px;
}

.gallery div.lazy
{
	position		: absolute;
	left			: 190px;
	right			: 0px;
}

.cambig, .camsmall
{
	max-width		: 100%;
	max-height		: 100%;
	border			: 1px solid black;
}

.cambig
{
	width			: 1280px;
	height			: 720px;
}

.camsmall
{
	width			: 640px;
	height			: 360px;
}

img.webcam
{
	min-height		: 100px;
	min-width		: 100px;
	width			: 100%;
	border			: 1px solid black;
}

img.webcam:hover
{
	width			: 100%;
	position		: absolute;
	top			: 0px;
	left			: 0px;
	z-index			: 960;
}

div.webcam
{
	width			: 400px;
	height			: 400px;
	float			: left;
}

div.lazy
{
	text-align		: center;
}

@media (max-width: 600px)
{
	.gallery div.gallerymenu
	{
		position	: initial;
		top		: initial;
		left		: initial;
		width		: initial;
		height		: initial;
	}

	.gallery div.lazy
	{
		position	: initial;
		left		: initial;
		right		: initial;
	}
}

.fullscreen #container
{
	background-color	: black;
}

.fullscreen div.gallerymenu,
.fullscreen nav,
.fullscreen a.album_next,
.fullscreen a.album_prev
{
	display			: none;
}

.fullscreen div.gallerypix
{
	margin-left		: initial;
}

.fullscreen div.lazy
{
	position		: initial;
	left			: initial;
	right			: initial;
	text-align		: center;
}

.fullscreen div.lazy ul
{
	padding-left		: 0px;
	margin			: 0px;
	display			: inline-block;
}

.fullscreen div.lazy > ul > li
{
	margin			: 0px;
	box-shadow		: initial;
	border-top		: 10px solid black;
	border-bottom		: 200px solid black;
}

.fullscreen div.lazy ul li figure img,
.fullscreen div.lazy ul li figure video
{
	border			: none;
	max-height		: 100%;
	max-width		: 100%;
	height			: 100%;
	width			: 100%;
}

/* Piclook */
html.piclook, body.piclook
{
	background-color	: initial;
}

.piclook nav
{
	margin-left		: 0px;
	margin-right		: 0px;
}

.piclook #container
{
	backdrop-filter		: none;
	-webkit-backdrop-filter	: none;
}

.piclook.jeroen body main article
{
	width			: 60%;
}

.frontpage body main article
{
	font-size		: 42pt;
}

@media (max-width: 425px)
{
	.piclook.jeroen body
	{
		background-position-x	: 60%;
	}

	.piclook.jeroen body main article
	{
		width			: 70%;
	}

	.piclook.evamaria body
	{
		background-position-x	: 30%;
	}

	.frontpage body main article
	{
		font-size		: 30pt;
	}
}

@media (max-height: 1000px)
{
	.piclook.jeroen body
	{
		background-position-y	: 5%;
	}

	.frontpage body main article
	{
		font-size		: 2.2em;
	}
}

@media (min-width: 1000px)
{
	.menu
	{
		right		: initial;
		width		: 11em;
		height		: 100%;
		border-bottom	: none;
		box-shadow	: 0px 0px 100px 10px rgba(0,0,0,.2);
	}

	nav.menu .rainbow
	{
		height		: 100%;
		width		: 10px;
		background	: repeating-linear-gradient(to bottom, #61c2e4, #6599e2, #442277, #442277, #442277, #c49cdf, #db9dbe,  #f0766b, #fad071, #f7fdca, #c4e17f);
	}

	nav.menu ul:first-child
	{
		padding-top	: 5em;
	}

	main
	{
		margin-left	: 14em;
	}

	#receptacle
	{
		padding-top	: 2em;
	}

	nav ul li, nav ul li.sel, .menu li
	{
		display:	list-item;
	}

	nav ul
	{
		padding-bottom	: 1em;
	}

	header.logotop
	{
		left		: 2.25em;
	}
}

body
{
	background-color	: initial;
	background-position-x	: center;
	background-position-y	: 5%;
	background-repeat	: no-repeat;
	background-size		: cover;
	background-attachment	: fixed;
}

.jeroen body
{
	background-color	: #5c8288;
	background-image	: url("/jeroen.jpg");
}

.evamaria body
{
	background-image	: url("/evamaria.jpg");
}

.rocio body
{
	background-image	: url("/rocio.jpg");
}

.antonio body
{
	background-image	: url("/antonio.jpg");
}

kbd
{
	background-color	: #a8bdae;
	color			: black;
	display			: inline-block;
	margin			: 0 .1em;
	padding			: .1em .6em;
}

code
{
	display			: inline-block;
	background-color	: #424242;
	color			: #55e213;
	padding			: 2px 5px 2px 5px;
	border-radius		: 5px;
}

pre code
{
	display			: block;
	padding			: 5px 10px 5px 10px;
}

kbd, code, pre
{
	font-family		: monospace;
	font-size		: 0.9em;
}

.error
{
	border			: 1px solid red;
	color			: red;
	padding			: .25em;
}

.invisible
{
	display			: none;
}

table.scubagear tbody tr td:nth-child(20n+5)
{
	white-space			: nowrap;
}

table.scubagear tbody tr td:nth-child(20n+4)
{
	white-space			: nowrap;
	text-align			: right;
}

/* form.css */
/* === Remove input autofocus webkit === */
*:focus
{
	outline			: none;
}

/* === Form Typography === */
.styled_form .form_hint, .styled_form .required
{
	font-size		: 11px;
}

/* === List Styles === */
.styled_form ul
{
	width			: 600px;
	list-style-type		: none;
	list-style-position	: outside;
	margin			: 0px;
	padding			: 0px;
}

.styled_form li
{
	list-style-type		: none;
 	padding			: .5em;
 	position		: relative;
	clear			: both;
}

.styled_form ul li ul
{
	float			: left;
	clear			: right;
	width			: initial;
}

.styled_form ul li ul li
{
	padding-left		: 0px;
}

/* === Form Header === */
.styled_form h2
{
	margin			: 0;
	display			: inline;
}

/* === Form Elements === */
.styled_form label
{
	width			: 200px;
	margin-top		: 3px;
	margin-right		: 10px;
	display			: inline-block;
	float			: left;
}

.styled_form input, .styled_form .fakebutton
{
	min-width		: 42em;
	min-height		: 2em;
	padding			: .5em .8em;
}

.styled-form select
{
	min-width		: 42em; 
	min-height		: 2.2em;
	background-color	: white;
}

.styled_form textarea
{
	padding			: 8px;
	width			: 42em;
	height			: 12em;
}

.styled_form input[type=number]
{
	min-width		: 15em;
}

.styled_form input[type=number]
{
	width			: 5em;
	padding-right		: 0px;
}

.styled_form input[type=submit], .fakebutton
{
	font-size		: 100%;
}

/* form element visual styles */
.styled_form input, .styled_form textarea, .fakebutton
{
	border			: 1px solid #aaa;
	box-shadow		: 0px 0px 3px #ccc, 0 10px 15px #eee inset;
	border-radius		: 2px;
	padding-right		: 30px;
	-moz-transition		: padding .25s;
	-webkit-transition	: padding .25s;
	-o-transition		: padding .25s;
	transition		: padding .25s;
}

.styled_form input[type="radio"]
{
	border			: initial;
	box-shadow		: initial;
	border-radius		: initial;
	padding-right		: initial;
	-moz-transition		: initial;
	-webkit-transition	: initial;
	-o-transition		: initial;
	transition		: initial;
	margin-right		: 5px;
}

.styled_form input:focus, .styled_form textarea:focus, .fakebutton
{
	background		: white;
	border			: 1px solid #555;
	box-shadow		: 0 0 3px #aaa;
}

/* === HTML5 validation styles === */
.styled_form input:required, .styled_form textarea:required
{
	background		: white url(/gfx/red_asterisk.png) no-repeat 98% center;
}

.styled_form span#login-required
{
	background		: white url(/gfx/red_asterisk.png) no-repeat 0% center;
	padding-left		: 1em;
}

.styled_form input:required:valid, .styled_form textarea:required:valid
{
	background		: white url(/gfx/valid.png) no-repeat 98% center;
	box-shadow		: 0 0 5px #5cd053;
	border-color		: #28921f;
}

.styled_form input:focus:invalid, .styled_form textarea:focus:invalid
{
	background		: white url(/gfx/invalid.png) no-repeat 98% center;
	box-shadow		: 0 0 5px #d45252;
	border-color		: #b03535
}

form.styled_form li.info > label, form.styled_form li.error > label, form.styled_form li.okay > label, form.styled_form li.warning > label, form.styled_form li.required > label
{
	background-repeat	: no-repeat;
	background-position-x	: 95%;
	background-position-y	: 0px;
	background-position	: top right;
}

form.styled_form li.info label
{
	background-image	: url(/gfx/info.png);
}

form.styled_form li.error label
{
	background-image	: url(/gfx/invalid.png);
}

form.styled_form li.okay label
{
	background-image	: url(/gfx/valid.png);
}

form.styled_form li.warning label
{
	background-image	: url(/gfx/warning.png);
}

form.styled_form li.required label
{
	background-image	: url(/gfx/red_asterisk.png);
}

form.styled_form li span.error
{
	color			: white;
	background		: red url(/gfx/warning.png) no-repeat 2% center;
	font-weight		: bold;
	padding			: 10px;
	border			: 1px solid black;
	padding-left		: 30px;
}

.styled_form ul li div input[type="radio"]
{
	float			: left;
}

.form_hint
{
	background		: #d45252;
	border-radius		: 3px 3px 3px 3px;
	color			: white;
	margin-left		: 8px;
	padding			: 1px 6px;
	z-index			: 999; /* hints stay above all other elements */
	position		: absolute; /* allows proper formatting if hint is two lines */
	display			: none;
}

.form_hint::before {
	content			: "\25C0";
	color			: #d45252;
	position		: absolute;
	top			: 1px;
	left			: -6px;
}

.styled_form input:hover + .form_hint, .styled_form textarea:hover + .form_hint
{
	display			: inline;
}

.styled_form input:required:valid + .form_hint, .styled_form textarea:required:valid + .form_hint,
{
	background		: #28921f;
}

.styled_form input:required:valid + .form_hint::before, .styled_form textarea:required:valid + .form_hint::before
{
	color			: #28921f;
}

.fakebutton
{
	-webkit-touch-callout	: none;
	  -webkit-user-select	: none;
	   -khtml-user-select	: none;
	     -moz-user-select	: none;
	      -ms-user-select	: none;
	          user-select	: none;
}

.styled_form input[type=submit], .fakebutton
{
	border-radius		: 3px;
	-webkit-border-radius	: 3px;
	-moz-border-radius	: 3px;
	-ms-border-radius	: 3px;
	-o-border-radius	: 3px;
	box-shadow		: inset 0 1px 0 0 #9fd574;
	-webkit-box-shadow	: 0 1px 0 0 #9fd574 inset;
	-moz-box-shadow		: 0 1px 0 0 #9fd574 inset;
	-ms-box-shadow		: 0 1px 0 0 #9fd574 inset;
	-o-box-shadow		: 0 1px 0 0 #9fd574 inset;
	color			: white;
	font-weight		: bold;
	padding			: 6px 20px;
	text-align		: center;
	text-shadow		: 0 -1px 0 #396715;
}

.styled_form input[type=submit], .fakebutton
{
	background-color	: #68b12f;
	background		: -webkit-gradient(linear, left top, left bottom, from(#68b12f), to(#50911e));
	background		: -webkit-linear-gradient(top, #68b12f, #50911e);
	background		: -moz-linear-gradient(top, #68b12f, #50911e);
	background		: -ms-linear-gradient(top, #68b12f, #50911e);
	background		: -o-linear-gradient(top, #68b12f, #50911e);
	background		: linear-gradient(top, #68b12f, #50911e);
	border			: 1px solid #509111;
	border-bottom		: 1px solid #5b992b;
}

input:disabled, input:read-only
{
	background-color	: #eeeeee;
	border			: none;
	box-shadow		: none;
	-webkit-box-shadow	: none;
	-moz-box-shadow		: none;
	-ms-box-shadow		: none;
	-o-box-shadow		: none;
}

.styled_form input[type=submit]:disabled, a.fakebutton.disabled, a.fakebutton.disabled:hover
{
	background-color	: #eeeeee;
	background		: -webkit-gradient(linear, left top, left bottom, from(#aaaaaa), to(#911e0d));
	background		: -webkit-linear-gradient(top, #aaaaaa, #555555);
	background		: -moz-linear-gradient(top, #aaaaaa, #555555);
	background		: -ms-linear-gradient(top, #aaaaaa, #555555);
	background		: -o-linear-gradient(top, #aaaaaa, #555555);
	background		: linear-gradient(top, #aaaaaa, #555555);
	border			: 1px solid #aaaaaa;
	border-bottom		: 1px solid #555555;
	cursor                  : not-allowed;
	-webkit-box-shadow      : 0 1px 0 0 #aaaaaa inset;
	   -moz-box-shadow	: 0 1px 0 0 #aaaaaa inset;
	    -ms-box-shadow	: 0 1px 0 0 #aaaaaa inset;
	     -o-box-shadow	: 0 1px 0 0 #aaaaaa inset;
	        box-shadow	: inset 0 1px 0 0 #aaaaaa;
}

.styled_form input[type=submit].allow, .fakebutton.allow
{
	background-color	: green;
	background		: -webkit-gradient(linear, left top, left bottom, from(#00ff00), to(#1e910d));
	background		: -webkit-linear-gradient(top, #00ff00, #1e910d);
	background		: -moz-linear-gradient(top, #00ff00, #1e910d);
	background		: -ms-linear-gradient(top, #00ff00, #1e910d);
	background		: -o-linear-gradient(top, #00ff00, #1e910d);
	background		: linear-gradient(top, #00ff00, #1e910d);
	border			: 1px solid #00ff00;
	border-bottom		: 1px solid #1e910d;
}

.styled_form input[type=submit].deny, .fakebutton.deny
{
	background-color	: red;
	background		: -webkit-gradient(linear, left top, left bottom, from(#ff0000), to(#911e0d));
	background		: -webkit-linear-gradient(top, #ff0000, #911e0d);
	background		: -moz-linear-gradient(top, #ff0000, #911e0d);
	background		: -ms-linear-gradient(top, #ff0000, #911e0d);
	background		: -o-linear-gradient(top, #ff0000, #911e0d);
	background		: linear-gradient(top, #ff0000, #911e0d);
	border			: 1px solid #ff0000;
	border-bottom		: 1px solid #911e0d;
}

input[type=submit]:hover, .fakebutton:hover
{
	opacity			: .85;
	cursor			: pointer;
}

a.fakebutton, a.fakebutton a:visited, a.fakebutton:hover
{
	color			: white;
	text-decoration		: none;
	border-bottom		: none;
}

input[type=submit]:active, .fakebutton:active
{
	border			: 1px solid #20911e;
	box-shadow		: 0 0 10px 5px #356b0b inset;
	-webkit-box-shadow	: 0 0 10px 5px #356b0b inset;
	-moz-box-shadow		: 0 0 10px 5px #356b0b inset;
	-ms-box-shadow		: 0 0 10px 5px #356b0b inset;
	-o-box-shadow		: 0 0 10px 5px #356b0b inset;
}

input[type=submit].allow:active, .fakebutton.allow:active
{
	border			: 1px solid #00ff00;
	box-shadow		: 0 0 10px 5px #1e910d inset;
	-webkit-box-shadow	: 0 0 10px 5px #1e910d inset;
	-moz-box-shadow		: 0 0 10px 5px #1e910d inset;
	-ms-box-shadow		: 0 0 10px 5px #1e910d inset;
	-o-box-shadow		: 0 0 10px 5px #1e910d inset;
}

input[type=submit].deny:active, .fakebutton.deny:active
{
	border			: 1px solid #ff0000;
	box-shadow		: 0 0 10px 5px #911e0d inset;
	-webkit-box-shadow	: 0 0 10px 5px #911e0d inset;
	-moz-box-shadow		: 0 0 10px 5px #911e0d inset;
	-ms-box-shadow		: 0 0 10px 5px #911e0d inset;
	-o-box-shadow		: 0 0 10px 5px #911e0d inset;
}

.styled_form input[type=checkbox]
{
	appearance		: none;
	-webkit-appearance	: none;
	box-shadow		: inset 0px 0px 0px 1px #e6e6e6;
	border-radius		: 15px;
	background-color	: white;
	padding			: 1px;
	display			: inline-block;
	width			: 52px;
	min-width		: 52px;
	height			: 31px;
	position		: relative;
	cursor			: pointer;
	transition		: all .3s ease-out;
	margin			: 0px;
	transform		: scale(1);
	-webkit-transform	: scale(1);
}

.styled_form input[type=checkbox]:checked
{
	box-shadow: inset 0px 0px 0px 20px #53d76a;
}

.styled_form input[type=checkbox]:disabled, .styled_form input[type=radio]:disabled, .styled_form input[type=checkbox]:read-only, .input[type=submit]:disabled,
{
	cursor			: not-allowed;
}

.styled_form input[type=checkbox]:checked:disabled, input[type=radio]:checked:disabled, .styled_form input[type=checkbox]:checked:read-only, input[type=radio]:checked:read-only
{
	box-shadow: inset 0px 0px 0px 20px #82ab89;
}

.styled_form input[type=checkbox]:after
{
	content			: '';
	position		: absolute;
	width			: 29px;
	height			: 29px;
	border-radius		: 15px;
	box-shadow		: 0px 2px 2px 1px rgba(0,0,0,.2);
	cursor			: pointer;
	background-color	: white;
	transition		: all 0.1s ease-in .1s;
}

.styled_form input[type="checkbox"]:checked:after,input[type="radio"]:checked:after
{
	left			: 22px;
}

.styled_form input[type="checkbox"]:focus
{
	padding-right		: 0px;
}

.styled_form textarea.console
{
	font-family		: "Lucida Console", Monaco, "Courier New", Courier, monospace;
	width			: 80%;
	min-height		: 200px;
}

input.search, input.search:active, input.search:focus
{
	background              : white url(/gfx/search.png) no-repeat 98% center;
	background-size		: 2em 2em;
}

input.hidebox
{
	display			: none;
}

div.hidebox
{
	display			: none;
}

input.hidebox:checked ~ div.hidebox
{
	display			: block;
}

label.hidebox:after
{
	content			: " >>>";
}

input.hidebox:checked ~ label.hidebox:after
{
	content			: " <<<";
}

.styled_form label.hidebox
{
	float			: none;
	width			: initial;
	min-width		: initial;
}

.styled_form div.hidebox input
{
	min-width		: 35em;
}

.styled_form input.hidebox:checked ~ div.hidebox
{
	display			: inline;
}

/* Needed so that float: right (e.g. images) stick to the right */
article
{
	width				: 100%;
}

article.expl:first-child h1
{
        float                           : left;
}

article.expl:first-child p.small
{
        float                           : right;
}

article.expl
{
	display				: inline-block;
	clear				: both;
}

.nobodypic #container
{
	background-color		: initial;
}

table.mitable tbody tr:hover
{
	background-color		: #9e5de626;
}

table.mitable
{
	overflow-y			: auto;
}

table.mitable th
{
	position			: sticky;
	top				: 0;
	z-index				: 5;
	font-weight			: bold;
	cursor				: default;
}

#mitable_sortfwdind, #mitable_sortrevind, .mitable_nosortind
{
        user-select			: none;
        float				: right;
        font-size			: .8em;
}

.mitable_nosortind
{
        color				: #eeeeee;
}

div.mitable_filter, span.mitable_filtericon
{
	padding-bottom			: 1em;
	-webkit-user-select		: none;
	user-select			: none;
	font-size			: small;
}

.mitable_filter input
{
	min-width			: 40em;
	max-width			: 80%;
	margin-right			: -3em;
	padding-left			: .5em;
}

.mitable_optionsheader
{
        display                 : inline-block;
        width                   : 100%;
        border-bottom           : 1px solid black;
        padding-top             : 5px;
}

.mitable_optionstitle
{
        display                 : inline-block;
        font-weight             : bold;
        padding-left            : 5px;
}

.mitable_optionsclose
{
        float                   : right;
        display                 : inline-block;
        cursor                  : pointer;
        clear                   : right;
        padding-right           : 5px;
}

.mitable_optionsbutton
{
        display                 : inline-block;
        font-size               : large;
        cursor                  : pointer;
}

.mitable_options
{
        position                : fixed;
        border                  : 2px solid black;
        background-color        : white;
        left                    : 2em;
        top                     : 2em;
        max-width               : 100em;
        max-height              : 20em;
        z-index                 : 42;
}

.mitable_options table
{
        overflow                : scroll;
        display                 : inline-block;
        max-height              : 18em;
        width                   : 100%;
}

.tablepix thead
{
	display				: none;
}

table.tablepix tr
{
	transform			: rotate(-1deg);
	float				: left;
	margin				: 1em;
	padding				: 0px;
	min-width			: 1.5em;
	color				: black;
	box-shadow			: 0 4px 20px rgba(0, 0, 0, .9);
	font-weight			: bold;
}

table.tablepix tr, table.tablepix tr td figure figcaption, table.tablepix tr td figure figcaption a
{
	color				: black;
	font-style			: italic;
}

table.tablepix tr td figure img
{
	vertical-align			: middle;
	width				: 100%;
}

table.tablepix tr:nth-child(even)
{
	transform			: rotate(1.5deg);
}

table.tablepix tr:nth-child(3n)
{
	transform			: initial;
}

/* Do not rotate every 5th image */
table.tablepix tr:nth-child(5n)
{
	transform			: rotate(2deg);
	top				: 5px;
}

/* Keep default rotate for every eleventh, but offset it */
table.tablepix tr:nth-child(11n)
{
	position			: relative;
	top				: 3px;
	left				: -5px;
}

table.tablepix tr, table.tablepix tr td
{
	padding				: 0px;
	display				: block;
}

table.tablepix figure figcaption
{
	padding				: 5px 0px 0px 0px;
}

table.tablepix figure figcaption, table.tablepix tr td
{
	font-size			: small;
	text-align			: center;
}

table.tablepix tr td span
{
	float				: right;
	padding-right			: 5px;
}

table.tablepix tr:nth-child(even)
{
	background-color		: rgba(250, 250, 250, .9);
}

table.tablepix tr:nth-child(odd)
{
	background-color		: rgba(240, 240, 240, .9);
}

a
{
	color				: #614f85;
	background-color		: transparent;
	text-decoration			: none;
}

a:hover
{
	text-decoration			: underline;
}


/* Dark Mode! */
@media (prefers-color-scheme: dark)
{
	body
	{
		font-weight		: 400;
	}

	body > #container, nav.toc, .menu, nav.menu ul li.sel a
	{
		color			: #d7d7d7;
		background-color	: #2a2a2a;
	}

	body > #container, .nobodypic body > #container
	{
		background-color	: rgba(27, 27, 27, 0.99);
	}

	table
	{
		color			: #d8d8d8;
	}

	table tr:nth-child(even)
	{
		background-color	: #0c0c0c;
	}

	table tr:nth-child(odd)
	{
		background-color	: #252525;
	}

	table.tablepix tr:nth-child(even)
	{
		background-color	: rgba(25, 25, 25, .9);
	}

	table.tablepix tr:nth-child(odd)
	{
		background-color	: rgba(24, 24, 24, .9);
	}

	table.tablepix tr td, table.tablepix a
	{
		color			: #efefef;
	}

	table.tablepix tr, table.tablepix tr td figure figcaption, table.tablepix tr td figure figcaption a
	{
		color			: #efefef;
	}

	table.publications tbody tr td ul li a
	{
		background-color	: #321c40a1;
	}

	table tbody tr th
	{
		color			: #cbcbcb;
		background-color	: #383a38;
	}

	a, table tr th a, table.tablepix a
	{
		color			: #c3b0e6;
	}

	.rightpic
	{	background-color	: black;
	}

	kbd
	{
		color			: white;
		background-color	: #2e4434;
	}

	nav ul li a, footer ul li a, nav.toc p
	{
		color			: #efefef;
	}

	img
	{
		opacity			: .75;
		transition		: opacity .5s ease-in-out;
	}

	img:hover
	{
		opacity			: 1;
	}

	div.gallerypix img
	{
		opacity			: initial;
		transition		: initial;
		filter			: initial;
	}

	div.gallerymenu a, div.gallerymenu table tr th a, div.gallerymenu table.tablepix a
	{
		color			: black;
	}

	table tr th
	{
		color			: #d4d4d4;
		background-color	: #2e4434;
	}

	.rightpic a, figcaption
	{
		color			: #909090;
	}

	nav.top
	{
		background-color	: rgba(0, 0, 0, 0.63);
	}

	.piclook #container
	{
		color			: #ececec;
		background-color	: #738f93;
		background-color	: rgba(0, 0, 0, 0.70);
	}
}

.violentviolet
{
	background-color		: #427;
	width				: 2em;
	height				: 2em;
	display				: inline-block;
	vertical-align			: middle;
}

@media (max-width: 450px)
{
	.styled_form label, .styled_form ul, .styled_form input, .styled_form select, .styled_form textarea
	{
		text-align	: left;
		width		: initial;
		min-width	: 100%;
		max-width	: 100%;
	}

	.styled_form fieldset, .styled_form li
	{
		padding		: 0px;
	}
}
