/*
 vim: foldmethod=marker
*/

html, body {
	width: 100%;
	height: 100%;
}

/* thumbnails >>> */
.gallery-thumbnail-container {
	width: 250px;
	height: 250px;
	/*float: left;*/
	display: inline-block;
	margin: auto;
}

.gallery-thumbnail {
	position: relative;
	width: 230px;
	height: 230px;
	margin: 10px;
	border: 1px solid lightgrey;
	border-radius: 5px;
	box-shadow: 0 2px 20px rgba(100, 100, 100, 0.5);
}

.gallery-legend {
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;

	background: rgba(0, 0, 0, 0.3);
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	text-size: smaller;
	color: white;
	text-shadow: 1px 1px #666;
}


a.gallery-link:hover .gallery-thumbnail {
	/*border-color: #aaa;*/
	/*background-color: #eee;*/
	box-shadow: 0 2px 20px rgba(50, 50, 50, 0.6);
}

.gallery-thumbnail img {
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	max-width: 100%;
	max-height: 100%;
	padding: 10px 10px 2em 10px;
}

/*Simple text explaining during the animation ONLY for GALLERY */
/*It's over the pictures*/
.explanation {
	position: absolute;
	z-index: 1200;
	top: 45%;
	left: 0;
	width: 100%;
	text-align: center;
	font-size: 3em;
	color: white;
	font-family: sherif;
	text-shadow: 1px 1px black, -1px -1px black;
}
/* <<< */

/* Main modal container >>> */
#slideshow-body {
	background-color: black;
	overflow: hidden;
}

.modal-overlay.mm-page,
.modal-overlay {
	position: fixed;
	z-index: 1099;
	text-align: center;
	color: white;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: black;
}

ul.gallery-modal-buttons {
	margin: 0;
	padding: 0;
	list-style: none;
	position: relative;
	z-index: 1200;
}

ul.gallery-modal-buttons li {
	display: inline-block;
	margin: 0;
}

ul.gallery-modal-buttons a {
	display: block;
	height: 40px;
	line-height: 20px;
	padding: 0 1em;
	text-decoration: none;
	color: white;
}

ul.gallery-modal-buttons li.active a,
ul.gallery-modal-buttons a:hover {
	background-color: #555;
}

.modal-loading {
	position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

#slideshow-container,
.gallery-modal-pic {
	position: fixed;
	top:    50px;
	bottom: 50px;
	left:   20px;
	right:  20px;
	/*border: 1px solid green;*/
	z-index: 1100;
}

#slideshow-container {
	top:    30px;
	bottom: 70px;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

#slideshow-container img,
.gallery-modal-pic img {
	position: absolute;
	z-index: 1100;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	display: block;
	max-width: 100%;
	max-height: 100%;
	box-shadow: 0 0 20px white;
}

#slideshow-pic_name {
	position: fixed;
	z-index: 1101;
	left: 50%;
	top:15px;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	font-weight: bold;
	color: white;
	text-shadow: 1px 1px black;
}

.gallery-modal-legend {
	position: absolute;
	bottom: 0;
	width: 100%;
	text-align: center;
	height: 40px;
	line-height: 40px;
	/*padding: 5px;*/
	color: white;
	font-size: 24px;
}

.gallery-modal-tab#share,
.gallery-modal-tab#buy,
.gallery-modal-tab#details {
	margin-top: 20px;
	max-width: 31em;
	margin: auto;
	overflow-y: auto;
	max-height: 80%;
	z-index: 1000;
	position: relative;
}

.gallery-modal-tab#buy .alert,
.gallery-modal-tab#details .alert {
	margin: 0;
}

@media (max-width: 620px) {
	.gallery-modal-tab#details,
	.gallery-modal-tab#buy {
		max-height: 70%;
		padding: 0 1em;
	}
}

.gallery-modal-tab#art.under {
	opacity: 0.3;
	position: relative;
}

.gallery-modal-tab#share p,
.gallery-modal-tab#buy p,
.gallery-modal-tab#details p {
	padding: 1em;
	/*background-color: rgba(255, 255, 255, 0.2);*/
	background-color: black;
}
.gallery-modal-tab#details p {
	text-align: left;
}
.gallery-modal-tab#buy {
	text-align: center;
}

.glow {
	animation: glow 2s;
	animation-iteration-count: 4;
}
@keyframes glow {
	0%, 100% {
		text-shadow: 0 0 0 white;
		transform: scale(1, 1);
		color: inherit;
	}
	50% {
		text-shadow: 0 0 15px orange;
		transform: scale(1.2, 1.2);
		color: yellow;
	}
}

/* <<< */

/* panel on the side >>> */
#mmenu {
	z-index: 1205;
	background-color: rgba(50, 50, 50, 0.7);
	color: white;
}
#mmenu p {
	padding: 10px 0 10px 20px;
	font-size: 120%;
}
.mm-panels h3 {
	clear: both;
	color: #9DC7FF;
	width: 50%;
	text-align: center;
}
.mm-panels b {
	color: #F1F124;
}

dl.help-menu dt {
	float: left;
	width: 50%;
	/*padding-left: 2em;*/
	text-align: center;
	clear: left;
}
dl.help-menu dd {
	float: left;
	width: 50%;
	text-align: center;
}
/* <<< */

/* Tabs in Modal window >>> */
#tab-location i.fa.animated.repeat-2,
#tab-art i.fa.animated.repeat-2 {
	animation-iteration-count: 2;
}

#tab-location {
	position: relative;
}

#tab-location #tab-location-indicator {
	position: absolute;
	display: block;
	width: 100%;
	top: 100%;
	z-index: 1100;
}
/* <<< */

/* different types of indicators >>> */
.gallery-modal-buttons li.indicator a {
	color: yellow;
}
.indicator {
	box-shadow: 0 0 10px yellow;
}
/* <<< */

/* buttons in the modal window >>> */

/* closing */
a.gallery-modal-close {
	position: fixed;
	display: block;
	width: 30px;
	height: 30px;
	bottom: 1em;
	right: 1em;
	background: white;
	border-radius: 100%;
	color: black;
	line-height: 3em;
	z-index: 1202;
	font-size: 11px;
}
a.gallery-modal-close.top {
	top: 1em;
}

a.gallery-modal-help {
	position: absolute;
	display: block;
	padding: 2px 10px;
	top: 1em;
	right: 4em;
	border-radius: 10px;
	background: #245AF1;
	color: white;
	box-shadow: 0 0 10px #245AF1;
	z-index: 1299;
	height: 2em;		/* to match with the new close button */
	line-height: 1.8em;
}

/* next and previous buttons on the side of the frame */
.btn-next-side,
.btn-prev-side {
	position: absolute;
	display: block;
	z-index: 1110;
	top: 50%;
	font-size: 2em;
	/*background: rgba(128, 128, 128, 0.5);*/
	color: white;
}

.btn-prev-side:hover,
.btn-next-side:hover {
	color: yellow;
	/*margin-top: -1em;*/
	/*padding: 1em;*/
}

.btn-prev-side {
	left:0;
}

.btn-next-side {
	right:0;
}

/* modal content format (spacing etc...) >>> */
.gallery-modal-spacing {
	margin-top: 2em;
}
/* <<< */

/* specific settings for the slideshow */
#modal-overlay .preload {
	visibility: hidden;
}

/* controls >>> */
.slideshow-controls {
	position: fixed;
	z-index: 1200;
	color: white;
	padding: 1em;
}
#slideshow-progress,
#slideshow-controls {
	left: 15%;
	right: 15%;
}

/* mode controls */
#mode-controls {
	text-align: left;
}
#mode-controls .fa,
#mode-controls b {
	color: #F1F124;
}
#mode-controls a {
	color: white;
}
#mode-controls a.btn {
	text-shadow: none;
	color: inherit;
	background-color: grey;
	border: none;
	font-weight: bold;
}
#mode-controls a:hover {
	text-decoration: none;
	color: #9DC7FF;
}

.mode-controls__block {
	text-shadow: 1px 1px black, -1px -1px black;
	padding: 0 0 20px 0;
	width: 100%;
}

.mode-controls__block .fa {
	width: 2em;
}

/* ====================================================================== */

#slideshow-controls {
	bottom: 0;
}

#slideshow-progress-counter {
	text-shadow: 1px 1px black;
	display: inline-block;
	text-align: center;
}

#slideshow-progress {
	bottom: 35px;
}

#slideshow-progress-total {
	background-color: #a7a69c;
	height: 5px;
}

#slideshow-progress-current {
	height: 5px;
	background-color: #245AF1;
	box-shadow: 0 0 10px #245AF1;
}

#slideshow-progress-counter {
	display: none;
}

/*Modes >>>*/
#modes {
	position: fixed;
	left: 10px;
	top: 10px;
	z-index: 1300;
	padding: 10px;
	border: 2px solid lightblue;
	border-radius: 5px;
	box-shadow: 0 0 5px cyan;
	text-align: left;
}
#modes .form-group {
	margin: 0;
}
/* <<< */

@media (max-width: 850px) {
	#slideshow-progress {
		display: none;
	}
	#slideshow-controls>div {
		display: block;
	}

	#slideshow-progress-counter {
		display: block;
	}
}

#slideshowcontrol-location {
	width: 130px;
}

#slideshowStartIndicator,
#preloaderIndicator,
#slideshowPauseIndicator {
	position: fixed;
	z-index: 1210;
	top: 50%;
	left: 50%;
	margin-top: -50px;
	margin-left: -50px;
	text-align: center;
	font-size: 50px;
	line-height: 100px;
	background: rgba(0, 0, 0, 0.8);
	box-shadow: 0 0 20px rgba(200, 200, 200, 1);
	/*border: 1px solid rgba(200, 200, 200, 0.8);*/
	width: 100px;
	height: 100px;
	border-radius: 10px;
	cursor: pointer;
}

#slideshowStartIndicator {
	font-size: 15px;
	line-height: 15px;
	margin: auto;
	width: auto;
	height: auto;
	padding: 15px;
	transform: translate(-50%, -50%);
}

/* <<< */

#slideshow-explanation {
	position: absolute;
	width: 70%;
	left: 15%;
	margin: auto;
	font-size: 20px;
	padding-top: 2em;
	font-weight: bold;
	border: none;
	background: rgba(0, 0, 0, 0.75);
	/*color: #F1F124;*/
	z-index: 1201;
	color: white;
}
#slideshow-explanation h3 {
	font-weight: bold;
}
#slideshow-explanation a {
	color: #5ea2ff;
}
#slideshow-explanation a:hover {
	text-decoration: none;
	color: #9DC7FF;
}
#slideshow-explanation b,
#slideshow-explanation small {
	color: #F1F124;
}
#slideshow-explanation .text-success {
	color: #5cb85c;
}

/*Explanation text layout on smaller screens*/
@media screen and (max-width: 1000px) {
	#slideshow-explanation p {
		/*border-left: 2px solid blue;*/
		/*padding-left: 1em;*/
		/*margin-bottom: 1em;*/
		font-size: 80%;
		/*text-align: left;*/
	}
}

/*controls and progress on the lower part for smaller screens*/
@media screen and (max-width: 800px) {
	#slideshow-controls,
	#slideshow-progress {
		left: 0;
		right: 0;
	}
}

/*Slideshow filmstrip >>>*/
#modal-overlay.filmstrip-on,
#modal-overlay.filmstrip-on .gallery-modal-close {
	bottom: 100px;
}

.filmstrip-on #slideshow-container {
	/* 70 + filmstrip height */
	bottom: 170px;
}
.filmstrip-on #slideshow-controls,
.filmstrip-on #slideshow-progress {
	animation-duration: 1s;
	transform: translate(0, -100px);
}

#filmstrip-container {
	position: fixed;
	bottom: 0;
	/*left: 0;*/
	/*right: 0;*/
	/*overflow-x: hidden;*/
	white-space: nowrap;
}

#filmstrip-container a {
	display: inline-block;
	position: relative;
	width: 75px;
	height: 75px;
	overflow: hidden;
	text-align: center;
	margin: 0 2px;
	border: 2px solid white;
	transform-origin: 50% 100%;
	z-index: 1099;
}

#filmstrip-container a.current {
	/*border-color: #245AF1;*/
	border-color: yellow;
	z-index: 1100;
	animation: zoomIn 0.5s;
}

#filmstrip-container.mode-gallery a:nth-child(even) {
	width: 50px;
	height: 50px;
	transform-origin: 50% 50%;
	margin-bottom: 12px;
}

@keyframes zoomIn {
	0%, 100% {
		transform: scale(1, 1);
	}
	50% {
		transform: scale(1.2, 1.2);
	}
}

#filmstrip-container a img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(0.5, 0.5);
}
/*<<<*/

#tags {
	border: none;
	margin-left: -2px;
	background: transparent;
	color: white;
	text-shadow: 1px 1px black, -1px -1px black;
}

#tags:active,
#tags:focus {
	outline: none;
}

#tags option {
	background: transparent;
	text-shadow: 1px 1px black, -1px -1px black;
	color: white;
}
#tags:active option,
#tags:focus option {
	background-color: black;
}

/* responsive rules >>> */

/* responsive rules */
@media (max-width: 600px) {
	ul.gallery-modal-buttons li:first-child,
	ul.gallery-modal-buttons li:last-child {
		display: none;
	}
	a.gallery-modal-close.top {
		top: 3em;
	}
}
@media (max-width: 460px) {
	ul.gallery-modal-buttons a {
		padding: 0 5px;
	}
	ul.gallery-modal-buttons span {
		display: none;
	}
}

/* <<< */
