/* Map shell — layout that must sit above Google Maps canvas */
body.ngvm-fullscreen-map {
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;
}

body.ngvm-fullscreen-map .ngvm-map-app {
	position: fixed;
	inset: 0;
	z-index: 1;
	height: 100vh;
}

#map {
	position: absolute !important;
}

.ngvm-info-window {
	isolation: isolate;
}

/* Street View layer stays under our chrome controls */
.ngvm-info-canvas {
	z-index: 1;
}

/* Google-style title chip (top center) — white, shrink-to-text */
#infoWindow #contentCanvas #title {
	position: absolute;
	left: 50%;
	top: 0.75rem;
	z-index: 2;
	width: max-content;
	max-width: calc(100% - 5.5rem);
	transform: translateX(-50%);
	border-radius: 9999px;
	border: none;
	background: #fff;
	padding: 0.55rem 1rem;
	text-align: center;
	font-size: 1.14rem; /* ~1.2× previous 0.95rem */
	font-weight: 500;
	line-height: 1.35;
	color: #3c4043;
	box-shadow: 0 1px 3px rgba(60, 64, 67, 0.3), 0 4px 8px 3px rgba(60, 64, 67, 0.15);
	pointer-events: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#streetviewContent,
#streetviewContent iframe {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
}

/*
 * Close control — solid grey square, TOP-RIGHT, stacked above
 * Street View’s fullscreen control. Must beat the iframe stacking.
 */
.ngvm-sv-controls {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 10;
	pointer-events: auto;
}

.ngvm-sv-controls #closeInfoWindow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background-color: #404040;
	color: #fff;
	line-height: 0;
	font-size: 0;
	cursor: pointer;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
	transition: background-color 0.15s ease;
	-webkit-appearance: none;
	appearance: none;
}

.ngvm-sv-controls #closeInfoWindow:hover,
.ngvm-sv-controls #closeInfoWindow:focus-visible {
	background-color: #4d4d4d;
	outline: none;
}

.ngvm-sv-controls #closeInfoWindow .ngvm-close-icon {
	display: block;
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
}

@media (max-width: 640px) {
	.ngvm-sv-controls {
		top: 8px;
		right: 8px;
	}

	#infoWindow #contentCanvas #title {
		top: auto;
		bottom: 1rem;
		left: 50%;
		right: auto;
		max-width: calc(100% - 2rem);
		transform: translateX(-50%);
		font-size: 1.05rem; /* ~1.2× previous 0.875rem */
		white-space: normal;
	}
}

