/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
	0.	Shortcodes
	1.	Single
--------------------------------------------------------------*/

/*--------------------------------------------------------------
0. Shortcodes
--------------------------------------------------------------*/

/* Shortcode: Hours ---------------------- */
.wpsb-location-hours{max-width:15em;margin:0}
.wpsb-location-hours tr{display:block;}
.wpsb-location-hours td{display:block;text-align:left;}
.wpsb-location-hours tr:nth-child(odd) td{background:transparent}
.wpsb-location-hours td{padding:0.1em 0.25em}
.wpsb-location-hours-today td{position:relative;font-weight:bold;}
.wpsb-location-hours-today td:first-child:before {content:'';position:absolute;display:block;right:100%;top:0;width:0.15rem;height:100%;background:#222;}
@media only screen and (min-width:17.5em){ /*280px*/
	.wpsb-location-hours tr { display:table-row;}
	.wpsb-location-hours td { display:table-cell;}
	.wpsb-location-hours tr td:last-child{text-align:right;}
}

/* Shortcode: Geo Block ------------------ */
.wpsb-location-geo-block { text-align: center; }
.wpsb-location-geo-title { margin-top: 0; }
.wpsb-location-geo-cities { margin-top: 0; }
.wpsb-location-geo-subtitle { font-size: 1.25rem; }
.wpsb-location-geo-city { font-size: 1rem; font-weight: normal; position: relative; display: inline-block; }

/* Shortcode: Map ------------------------ */
#wpsb-location-map { display: flex; flex-flow: row wrap; justify-content: space-around; position: relative; overflow: hidden; border-bottom: 2px solid #eee; }
#wpsb-location-map-info-panel { flex: 1; position: relative; width: 100%; background: #fff; overflow-y: auto; min-width: 15em; }
#wpsb-location-map-info-panel::-webkit-scrollbar {width: 0.3em;}
#wpsb-location-map-info-panel::-webkit-scrollbar-thumb {background-color: #888;}
#wpsb-location-map-info-panel::-webkit-scrollbar-track {background-color: #ddd;}
#wpsb-location-map-info-panel .info-box { border-bottom: 2px solid #4285f4; }
#wpsb-location-map-super-panel { position: relative; background: #fff; }
#wpsb-location-map-info-panel .info-box.active { left: 0; }
#wpsb-location-map-info-panel .info-box h3 {font-size: 1em;margin: 0; font-family: 'Open Sans', sans-serif; font-weight: normal; }
#wpsb-location-map-info-panel .info-box span { display: block; padding: 0.8em 1.5em; overflow: hidden; color: #4a4a4a; }
#wpsb-location-map-info-panel .info-box a { display: block; padding: 0.8em 1.5em; overflow: hidden; color: #4a4a4a; }
#wpsb-location-map-info-panel .info-title a:before { content: ''; display: inline-block; background: url(./../images/pointer.svg) no-repeat; width: 1em; margin-left: -1em; height: .7em; }
#wpsb-location-map-super-panel a { display: block; padding: 0.1em; overflow: hidden; color: #4a4a4a; }
#wpsb-location-map-super-panel .infobox-title a { color: #fff; }
#wpsb-location-map-info-panel .info-box a:hover { background: #fff2df; }
#wpsb-location-map .info-box a {display: block;}
#wpsb-location-map-canvas { height: auto !important; min-width: 15em; min-height: 15em; width: 100%; position: relative; overflow: hidden; -webkit-box-flex: 2; flex: 2 0; }
#wpsb-location-map-legend { background: rgba(255,255,255,0.8); border-radius: 0.25em; padding: 1em; margin: 1em; z-index: -1; position: absolute; bottom: 14px; right: 0; }
#wpsb-location-map-legend h3 {margin: 0; }
#wpsb-location-map-legend .legend-item { margin-top: 0.5em; line-height: 1.5; }
#wpsb-location-map-legend img { width: 20px; margin-right: 0.5em; }
#wpsb-location-map-canvas .info-box h3 { margin: 0 0 0.2em; }

#wpsb-location-map-info-panel .info-box:last-of-type {border: none;}
#wpsb-location-map-super-panel {font-size: 0.8em;}
#wpsb-location-map .info-img {background-size: cover; height: 200px; position: relative;}
#wpsb-location-map .title-box {background: #4285f4; padding: 1em 1em 1em 4em; position: relative;}
#wpsb-location-map .title-box.has-image {background: rgba(66, 133, 244, 0.9); position: absolute; width: 100%; bottom: 0;}
#wpsb-location-map .title-box #back_to_panel {position: absolute; top: 0; bottom: 0; left: 0; background: #326ac6; width: 3em; cursor: pointer; -webkit-transition: all 0.4s ease; transition: all 0.4s ease;}
#wpsb-location-map .title-box.has-image #back_to_panel {background: rgba(50, 106, 198, 0.7);}
#wpsb-location-map .title-box #back_to_panel svg {width: 1.5em; height: 1.5em; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; -webkit-transition: all 0.4s ease; transition: all 0.4s ease; color: rgba(255,255,255,0.4);}
#wpsb-location-map .title-box #back_to_panel:hover {background: #1a5dcd; color: rgba(255,255,255,1);}
#wpsb-location-map .title-box #back_to_panel:hover svg {color: rgba(255,255,255,1);}
#wpsb-location-map .title-box h3 {margin: 0; font-size: 1.2em; font-weight: normal;}
#wpsb-location-map-super-panel .wpsb-review-average-rating, #wpsb-location-map-super-panel .wpsb-review-average-rating .checked, #wpsb-location-map-super-panel .wpsb-review-average-rating .checked~i {color: #fff;}
#wpsb-location-map-super-panel .wpsb-review-average-rating i {color: #8eb6f8;}
#wpsb-location-map .details-box {padding: 1em;}
#wpsb-location-map .details-svg {float: left; font-size: 1em; width: 1em; height: 1em; margin: 0.3em 1em 0 0;}
#wpsb-location-map .short-hours {display: inline-block;}
#wpsb-location-map .location-hours {display: inline-block; max-width: 80%; max-width: fit-content;}

#wpsb-location-map .gm-style .gm-style-iw {overflow: visible; padding: 0.9em !important; border-radius: 0.25em; }
#wpsb-location-map .gm-style .gm-style-iw * {overflow: visible !important;}
#wpsb-location-map .gm-style .gm-style-iw .hover-info-box {width: 300px; position: relative; left: -14px; top: -8px; padding-left: 1em;}
#wpsb-location-map .gm-style .gm-style-iw .info-img2 {float: left; margin: 0 1em -16px -1em; width: 100px; height: 100px; background-size: cover;}
#wpsb-location-map .gm-style .gm-style-iw .infobox-title {line-height: 1.2; font-size: 1em; text-overflow: ellipsis; margin: 0; overflow: hidden !important; padding-top: 0.5em;}
#wpsb-location-map .gm-style .gm-style-iw .wpsb-review-average-rating .half-under {overflow: hidden !important;}
#wpsb-location-map .gm-style .gm-style-iw-t::after { top: -1px; }
@media only screen and (min-width:48.5em){
	#wpsb-location-map-info-panel { position: relative; top: auto; left: auto; bottom: auto; overflow-y: scroll; }
	#wpsb-location-map-super-panel { left: 0; }
}

/*--------------------------------------------------------------
1. Single
--------------------------------------------------------------*/
.wpsb-location-single-detail .fa {
	font-size: 1rem;
	line-height: 1;
	position: absolute;
	text-align: center;
	width: 1.5em;
	height: 1.5em;
	border: 1px solid #222;
	border-radius: 0.15rem;
	color: #fff;
	background: #222;
	left: -2em;
	top: 0;
	padding: .2em;
	transition: all 300ms ease;
}
.wpsb-location-single-detail {
	position: relative;
}
.wpsb-location-single-detail > * {
	position: relative;
	margin-left: 2rem;
}
.wpsb-location-single-detail h2 {
	margin-left: 0;
}
.wpsb-location-single-image img {
	border-radius: 0.25rem;
}
.wpsb-location-single-map {
	height: 18em;
	margin-bottom: 1em;
	border-radius: 0.25rem;
	overflow: hidden;
}
@media only screen and (min-width:48.5em) {
	.wpsb-location-single-info {
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
	}
	.wpsb-location-single-detail,
	.wpsb-location-single-image {
		flex: 0 0 48%
	}
}
