/**
 * Google Places Map CPT Styles
 */

.clear:before,
.clear:after {
	content: " ";
	display: table;
}

.clear:after {
	clear: both;
}

.hover-transition, .marker-icon-row .icon, .marker-row .marker-item {
	-webkit-transition: 0.2s all linear;
	-moz-transition: 0.2s all linear;
	-o-transition: 0.2s all linear;
	transition: 0.2s all linear;
}

.box-sizing {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

#gmb_markers_group_repeat {
	/*display: none;*/
}

.cmb_id_gmb_theme_json {
	display: none;
}

.marker-info-wrapper {
	background-color: #F1F1F1;
	margin: 8px 0 4px;
	padding: 12px 12px 12px 12px;
	font-size: 13px;
}

.marker-info-wrapper > div {
	margin: 0 0 5px;
	padding: 0;
}

.marker-info-wrapper > div.rating-wrap {
	margin: 0;
	padding: 0;
}

.repeatable-grouping .cmb-nested-table td {
	padding-top: 3px;
}

.repeatable-grouping .cmb-nested-table td pre {
	margin: 0;
}

.repeatable-grouping .cmb-nested-table td pre textarea {
	height: 50px;
}

.new-window {
	background: url('../img/new-window-icon.png') no-repeat right 3px transparent;
	padding-right: 16px;
}

/*Shortcode Input */

.shortcode-wrap {
	margin: 1px 14px 12px 11px;
}

.shortcode-wrap label {
	margin: 0 0 3px;
	display: block;
	cursor: default;
}

.shortcode-input {
	margin: 0;
	width: 100%;
}

/*------------------------------------------
 CMB Interface
--------------------------------------------*/

.cmb_metabox_description {
	display: block;
	margin-top: 5px;
}

.cmb_id_gmb_places_search_multicheckbox ul {
	overflow: hidden;
}

.cmb_id_gmb_places_search_multicheckbox li {
	float: left;
	width: 33%;
}

.cmb_id_gmb_places_search_multicheckbox .cmb_metabox_description {
	margin-top: 10px;
	margin-right: 2px;
}

#google-map-wrap {
	position: relative;
}

.autocomplete-wrap {
	background: url('../img/powered-by-google-on-white.png') no-repeat right 8px rgba(0, 0, 0, 0);
}

.repeatable-group .shift-rows {
	display: none;
}

/*------------------------------------------
 Messages
--------------------------------------------*/

.wpgp-message {
	background-color: #FFF;
	border-left: 4px solid #7AD03A;
	-webkit-box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.15);
	box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.15);
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 1px 12px;
	display: none;
}

.wpgp-message.warning-message {
	border-left: 4px solid #d40000;
	margin: 20px 0 0;
}

.wpgp-message p, .form-table td .wpgp-message p {
	margin: .5em 0;
	padding: 2px;
}

.places-change-message {
	margin-bottom: 15px;
	margin-right: 2px;
}

.places-change-message p {
	float: left;
}

.places-change-message .button {
	float: right;
	margin-top: 5px;
}

#google-map-wrap .wpgp-message {
	margin-top: 20px;
}

/*------------------------------------------
 Google Map Metabox
--------------------------------------------*/

#map {
	width: 100%;
	margin: 0 auto;
}

.places-loading {
	background: url('../img/spinner.gif') no-repeat center right transparent;
	font-style: italic;
	position: absolute;
	top: -34px;
	right: 31px;
	padding: 0 25px 0 0;
	display: none;
}

.cmb_id_gmb_map_type td {
	padding-bottom: 0;
}

.cmb_id_gmb_map_type .cmb_option {
	margin: 5px 0 10px;
}

.cmb_id_gmb_geocoder td {
	padding-bottom: 3px;
}

/*------------------------------------------
 General Styles
--------------------------------------------*/

.cmb_id_gmb_search_radius, .cmb_id_gmb_places_search_multicheckbox {
	display: none;
}

#google_maps_details_options tr {
	display: none;
}

#google_maps_details_options tr.cmb_id_gmb_show_poi {
	display: table-row;
}

.snazzy-link {
	font-size: 10px;
	text-transform: uppercase;
	font-style: normal;
	display: inline-block;
}

.width_unit_label, .width_radio, .map-width, .map-height, .size-label {
	float: left !important;
}

#width_wrap {
	margin: 0 0 10px;
}

#size_labels_wrap {
	margin: 8px 0 0 10px;
	padding: 0;
	float: left;
}

#width_unit_percent {
	margin: 0 3px 0 0;
}

#width_unit_px {
	margin: 0 3px 0 8px;
}

.inner-sidebar table.cmb_metabox label.size-label, #side-sortables table.cmb_metabox label.size-label, label.size-label {
	font-weight: normal;
	font-style: italic;
}

.inner-sidebar table.cmb_metabox label.size-label, #side-sortables table.cmb_metabox label.size-label, .form-table label.size-label {
	padding: 9px 0 0;
	width: 50px;
	font-weight: normal;
}

.map-width, .map-height {
	width: 55px !important
}

/*------------------------------------------
 Place Markers
--------------------------------------------*/

#google-map-wrap div#infobubble-content {
	line-height: 1.35;
	/*overflow: hidden;*/
	/*white-space: nowrap;*/
}

#infobubble-content.loading {
	background: url('../../../includes/assets/img/loading.GIF') no-repeat center center #FFF;
}

#google-map-wrap div#infobubble-content > div {
	white-space: normal;
}

.gm-style-iw, .gm-style-iw > div {
	overflow: visible !important;
}

#infobubble-content p {
	font-size: 12px;
	margin: 0 0 7px;
	color: #2C2C2C;
}

#infobubble-content {
	padding: 0 0 0 0;
	margin: 3px -20px 0 0;
	min-width: 314px;
	min-height: 80px;
	height: 100%;
	overflow: hidden;
	box-sizing: border-box;
	cursor: default;
}

#infobubble-content .place-title {
	border: 1px solid #FFF;
	font-family: Roboto, Arial, sans-serif;
	font-size: 16px;
	line-height: 21px;
	font-weight: 700;
	min-height: 21px;
	white-space: normal;
	padding-right: 20px;
}

#infobubble-content .place-description {
	white-space: normal;
}

.marker-confirm-place {
	margin: 0 8px 4px 0;
	display: inline-block;
}

.marker-confirm-place:hover {
	cursor: pointer;
}

/* Ratings */
#infobubble-content .rating-wrap {
	overflow: hidden;
}

#infobubble-content .numeric-rating {
	font-size: 16px;
	color: #DD4B39;
	font-weight: 400;
	float: left;
	margin: 0 5px 0 0;
}

#infobubble-content .star-rating-wrap {
	background: url('../../../includes/assets/img/review_stars.png') no-repeat 0 0 transparent;
	height: 13px;
	width: 67px;
	float: left;
	margin: 5px 0 0;
}

#infobubble-content .star-rating-size {
	background: url('../../../includes/assets/img/review_stars.png') no-repeat 0 -13px transparent;
	height: 13px;
}

/*------------------------------------------
 Editable Marker
--------------------------------------------*/

#edit-toolbar {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: right;
}

#edit-toolbar > li {
	margin: 0 4px;
	cursor: pointer;
	display: inline-block;
	content: '';
	height: 21px;
	width: 21px;
	opacity: .5;
	background: url('../img/icons-infowindow-002.svg');
}

#edit-toolbar > li:hover {
	opacity: .75;
}

#edit-toolbar > li.trash-marker {
	background-position: -42px 0;
}

#edit-toolbar > li.edit-info {
	background: url('../img/icons-app-000.svg');
	background-position: 21px 21px;
}

/*------------------------------------------
Display Options
--------------------------------------------*/

#lat-lng-wrap input[type=text].latitude, #lat-lng-wrap input[type=text].longitude,
#side-sortables #lat-lng-wrap input[type=text].latitude, #side-sortables #lat-lng-wrap input[type=text].longitude {
	width: 100px;
	float: left;
}

.lat-lng-wrap {
	float: left;
	margin: 0 0 10px;
	clear: none;
}

.lng-wrap {
	margin-bottom: 0;
}

.lat-lng-wrap > span, .lat-lng-wrap > input {
	float: left;
}

.lat-lng-wrap > span {
	margin: 8px 5px 0 0;
	width: 80px;
	font-style: italic;
}

/* Mini message */

.lat-lng-change-message {
	float: left;
	clear: both;
	margin: 10px 0 0;
	width: 100%;
}

.lat-lng-change-message > p {
	float: left;
}

.lat-lng-update-btn {
	float: right;
	margin: 7px 0 0 !important;
}

/*-------------------------------------
Autocomplete Metabox
---------------------------------------*/
#google_maps_metabox .search-autocomplete {
	width: 78%;
	margin-right: 10px;
}

#google_maps_metabox .autocomplete-wrap p {
	font-style: italic;
	margin-bottom: 5px !important;
}

#google_maps_metabox a.drop-marker {
	font-style: normal;
}

/*-------------------------------------
Save Info Window Toolbar
---------------------------------------*/

#save-toolbar {
	margin: 0;
	padding: 0;
	float: left;
}

#save-toolbar > li {
	display: inline-block;
	margin: 0;
	padding: 0;
}

#save-toolbar > li:first-child {
	margin: 0 5px 0 0;
}

#save-toolbar > li .google-btn {
	width: 75px;
}

a.marker-edit-link {
	background: url('../img/marker-btn.png') no-repeat 0 0 transparent;
	width: 20px;
	height: 20px;
	opacity: 0.5;
	margin: 4px 0 0;
	display: block;
	float: right;
}

#save-toolbar > li .marker-edit-link {
	opacity: 0.75;
}

#infobubble-content .edit-place-title {
	width: 290px;
}

#infobubble-content .edit-place-description {
	display: block;
	font-size: 12px;
	width: 100%;
	min-height: 100px;
}

/*-------------------------------------
Marker Icon Modal
---------------------------------------*/

.marker-icon-row {
	margin-bottom: 10px;
}

.marker-icon-row, .save-marker-icon {
	display: none;
}

.marker-icon-row .icon, .marker-row .marker-item {
	width: 31%;
	float: left;
	font-size: 14px;
	margin-bottom: 10px;
	padding: 4px;
	border-radius: 5px;
}

.icon-inner {
	position: relative;
	top: -8px;
}

.marker-icon-row .icon span {
	font-size: 32px;
	margin-right: 8px;
	position: relative;
	top: 8px;
}

.marker-icon-row .icon:hover, .marker-row .marker-item:hover, .marker-item-selected {
	cursor: pointer;
	background: #DDEAEC;
}

.marker-label {
	z-index: 99;
	position: absolute;
	display: block;
	margin-top: -50px;
	margin-left: -25px;
	width: 50px;
	height: 50px;
	font-size: 28px;
	text-align: center;
	color: #FFFFFF;
	white-space: nowrap;
	line-height: 1;
}

/* Color */

.marker-icon-color-wrap, .marker-label-color-wrap {
	display: none;
}

.marker-label-color-wrap {
	margin-bottom: 60px;
}

.marker-color-picker-wrap {
	float: left;
}

#TB_ajaxContent p.color-desc {
	float: left;
	margin: 0 0 0 10px;
	padding-top: 3px;
	font-style: italic;
}

/* Pins */

.marker-row .marker-item {
	float: left;
	width: 31%;
}

.marker-svg {
	float: left;
	margin-right: 12px;
	height: 50px;
}

.marker-svg .default-marker {
	margin: 8px 0 0 10px;
}

.marker-description {
	line-height: 50px;
}

/* Save button */

.save-marker-icon {
	background: #F1F1F1;
	padding: 10px;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	border-top: 1px solid #DFDFDF;
}

.save-marker-icon .save-text {
	float: left;
	font-style: italic;
	margin: 0;
}

.save-marker-icon .button {
	float: right;
}

.radius-label {
	position: relative;
	top: 35px;
	color: #7dbee8;
}

/*-------------------------------------
Buttons
---------------------------------------*/

.google-btn {
	-webkit-border-radius: 2px;
	border-radius: 2px;
	cursor: default;
	font-weight: 300;
	font-size: 13px;
	text-align: center;
	white-space: nowrap;
	height: 27px;
	line-height: 27px;
	min-width: 54px;
	outline: 0;
	padding: 0 8px;

}

.google-btn-blue {
	-webkit-box-shadow: none;
	box-shadow: none;
	background-color: #4D90FE;
	background-image: -webkit-linear-gradient(top, #4D90FE, #4787ED);
	background-image: linear-gradient(top, #4d90fe, #4787ed);
	border: 1px solid #3079ED;
	color: #FFF;
}

.google-btn-blue:hover {
	-webkit-box-shadow: none;
	box-shadow: none;
	background-color: #357AE8;
	background-image: -webkit-linear-gradient(top, #4D90FE, #357AE8);
	background-image: linear-gradient(top, #4d90fe, #357ae8);
	border: 1px solid #2F5BB7;
	border-bottom-color: #2F5BB7;
}

.google-btn-blue:active, .google-btn-blue:focus {
	-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3);
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3);
	background: #357AE8;
	border: 1px solid #2F5BB7;
	border-top: 1px solid #2F5BB7;
}

.google-btn-default {
	-webkit-box-shadow: none;
	box-shadow: none;
	background-color: #F5F5F5;
	background-image: -webkit-linear-gradient(top, #F5F5F5, #F1F1F1);
	background-image: linear-gradient(top, #f5f5f5, #f1f1f1);
	color: #333;
	border: 1px solid #DCDCDC;
	border: 1px solid rgba(0, 0, 0, 0.1);
}

.google-btn-default:hover {
	-webkit-box-shadow: none;
	box-shadow: none;
	background-color: #F8F8F8;
	background-image: -webkit-linear-gradient(top, #F8F8F8, #F1F1F1);
	background-image: linear-gradient(top, #f8f8f8, #f1f1f1);
	border: 1px solid #C6C6C6;
	color: #111;
}

.google-btn-default:active {
	-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
	background: #F8F8F8;
	color: #111;
}

/*-------------------------------------
Temporary Info Window
---------------------------------------*/

.infowindow-toolbar {
	display: block;
	margin: 0;
	padding: 8px 0 5px;
}

.add-marker {
	text-decoration: none;
}