html {
	background-color: black;
	color: white;
	font: 12pt sans-serif;
	line-height: 150%; 
}

body {
	max-width: 1490px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 30px;
	padding-right: 30px;
}

a {
	color: #CCC;
	font-weight: bold;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

div.gallery {
	overflow: hidden;
	margin-left: -5px;
	margin-right: -5px;
}

div.height-limited {
	height: 298px; /* was 290px */
}

a.image {
	display: block;
	width: 140px;
	height: 140px;
	background-size: cover;
	background-position: center;
	float: left;
	margin-left: 5px;
	margin-right: 5px;
	margin-bottom: 10px;
	position: relative;
	border-radius: 0.25rem;
}

div#disclaimers {
	background-image: url(/_system/disclaimer.png);
	background-position: top left;
	background-repeat: no-repeat;
	padding-left: 40px;
}

p.disclaimer {
	font-size: smaller;
	line-height: 120%;
	color: #999;
	margin: 0;
	margin-bottom: 1rem;
}

div#tags {
	margin-top: 0.5rem;
}

div#tag-tabs {
	overflow: hidden;
}

div#tag-tabs a {
	display: block;
	float: left;
	border-radius: 0.5rem 0.5rem 0 0;
	background-color: #444;
	padding: 0.5rem;
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
	margin-right: 0.25rem;
	font-weight: normal;
	width: 6em;
	text-align: center;
}

div#tag-tabs a.current {
	font-weight: bold;
	background-color: #666;
}

div#tag-tabs a.current:hover {
	text-decoration: none;
}

div.tag-panel {
	background-color: #666;
	padding: 0.25rem;
	border-radius: 0 0.5rem 0.5rem 0.5rem;
	overflow: hidden;
}

.blinker {
	background-color: #999 !important;
	transition: all 0.5s;
}

div#tag-controls {
	padding: 0.25rem;
}

div.tag-heading {
	padding-bottom: 0.5rem;
	font-weight: bold;
}

a.tag, a#plus-more {
	display: block;
	float: left;
	background-color: #89cff0;
	color: black;
	font-weight: normal;
	padding: 0.5rem;
	margin: 0.25rem;
	border-radius: 0.25rem;
	line-height: 120%;
	white-space: nowrap;
}

a#plus-more {
	background-color: #CCC;
	font-weight: bold;
}

input#filter {
	font: 12pt sans-serif;
	background-image: url(/_system/search-lens.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: left;
	padding-left: 1.5rem;
	border: 0.25rem solid white;
	border-radius: 0.25rem;
}

a#reset-filter {
	display: none;
}

a.sort-order {
	font-family: Georgia, serif;
	font-style: italic;
	font-weight: normal;
}

a.current-sort-order {
	color: white;
	font-weight: bold;
}

a.current-sort-order:hover {
	text-decoration: none;
}

span#form_caption {
	font-size: smaller;
}

.qf_description, .qf_mandatory_explanation {
	font-size: smaller;
	color: #CCC;
}

.qf_error_text {
	display: block;
	color: red;
	font-weight: bold;
	font-size: smaller;
}

.qf_text, .qf_tinytext {
	font: 12pt sans-serif;
}

.qf_button {
	background-color: green;
	color: white;
	border: 0;
	border-radius: 0.5rem;
	padding: 0.5rem;
	font-size: 12pt;	
}

div#footer {
	border-top: 1px solid #CCC;
	font-size: smaller;
	padding-top: 0.5rem;
	margin-top: 0.5rem;
	color: #CCC;
}

.lb-caption a, .license-this {
	display: inline-block;
	background-color: #4ae;
	color: white !important;
	padding: 0.25rem;
	border-radius: 0.25rem;
}

img#image-container {
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	height: auto;
	border: 2px solid white;
	padding: 2px;
	box-sizing: border-box;
}

div#image-container-caption {
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
	font-size: smaller;
	text-align: center;
	line-height: 120%;
}


@media only screen and (max-width: 480px) {
	body {
		padding-left: 4px;
		padding-right: 4px;
	}
	
	a.image {
		width: calc((100vw - 8px) / 3 - 7px);
		height: calc((100vw - 8px) / 3 - 7px);
	}
	
	div.height-limited {
		height: calc(100vw); /* was -8px */
	}

	div.gallery {
		/* margin-right: -9px; */
		overflow-x: clip;
        margin-right: -4px;
	}
	
	div#footer {
		text-align: center;
	}
}
