/* NNL Map Widget Styles
 * Widget-specific styles only. Common styles are in maplibre-map-base.css
 */

.elementor-widget-nnl_map_widget .elementor-widget-container{
	overflow: hidden;
}

/* Leafmap Container - Widget-specific styles */
.nnl-map-widget .leafmap {
	/* Force GPU compositing to prevent iframe (YouTube) stacking context issues */
	transform: translateZ(0);
	-webkit-transform: translateZ(0);
	isolation: isolate; /* Create a new stacking context */
}

.nnl-map-widget .leafmap.loading > .map-item {
	display: none;
}

/* MapLibre interactive layers hover effect */
.nnl-map-widget .leafmap .maplibregl-canvas {
	cursor: pointer;
}

/* Popup Styles - Inner content only; container/tip/close are in maplibre-map-base.css */
.nnl-map-widget .maplibregl-popup-content {
	width: 405px;
}

/* Gebiete-mode popup: wrapper (position for close button), inner link fills the card */
.nnl-map-popup--gebiete {
	position: relative;
}

.nnl-map-popup--gebiete .nnl-map-popup__link {
	display: block;
	color: inherit;
	text-decoration: none !important;
	cursor: pointer;
}

.nnl-map-popup--gebiete .nnl-map-popup__link:hover {
	color: inherit;
	text-decoration: none;
}

.nnl-map-popup__top{
	aspect-ratio: 288/185;
	width: 100%;
	height: auto;
	background-size: cover;
	padding: 16px;
	display: flex;
	align-items: top;
	gap: 10px;
}

.nnl-gebietstyp-pill{
	padding: 4px 8px;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	width: min-content;
	height: min-content;
	/**
		border: 1px solid;
		border-radius: 5px; 
	**/
}

.nnl-map-popup__logo svg {
	height: 32px;
	width: 36px;
}

.nnl-map-popup__close {
	z-index: 2;
	width: 32px;
	height: 32px;
	margin: 0;
	margin-left: auto;
	padding: 0  !important;
	border-radius: 100%;
	background-color: rgba(255, 255, 255, 0.80) !important;
	border: 0.339px solid var(--Border-border-primary, #DCDCDC) !important;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	color: var(--black);
}

.nnl-map-popup__close:hover{
	background-color: rgba(255, 255, 255, 1) !important;
}

.nnl-map-popup__close:hover {
	background-color: rgba(255, 255, 255, 0.95);
}

.nnl-map-popup__close:focus {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.nnl-map-popup__close svg {
	display: block;
	pointer-events: none;
	width: 12px;
	height: 12px;
}

.nnl-map-popup__content{
	padding: 16px 32px 32px 32px;
	gap: 16px;
}

.nnl-map-popup__content p{
	margin: 0 !important;
}

.nnl-map-popup__nnl-name{
	font-size: var(--paragraph-s-font-size);
	font-weight: var(--paragraph-s-font-weight);
	line-height: var(--paragraph-s-line-height);
	color: var(--black);
}

.nnl-map-popup__title {
	margin: 0 0 10px 0;
	font-size: var(--h4-font-size);
	font-weight: var(--h4-font-weight);
	color: var(--black);
}

@media (min-width: 768px) {
	.nnl-map-popup h2.title,
	.nnl-map-popup h3.title {
		clear: none;
	}
}

.nnl-map-popup p {
	margin-top: 0;
	color: var(--black85);
}

.nnl-map-popup img.logo {
	float: right;
	width: auto;
	height: 40px;
}

@media (min-width: 768px) {
	.nnl-map-popup img.logo {
		height: 40px;
	}
}

.nnl-map-popup ul.nav-tabs {
	margin-bottom: 10px;
}

.nnl-map-popup .description .excerpt {
	overflow: hidden;
}

.nnl-map-popup .meta-information {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: none;
	-webkit-column-count: auto;
	-moz-column-count: auto;
	column-count: auto;
}

.nnl-map-popup .meta-information .meta .icon {
	display: inline-block;
	float: left;
	padding-top: 2px;
	padding-right: 5px;
}

.nnl-map-popup .meta-information .meta .value {
	overflow: hidden;
}

.nnl-map-popup .related-posts {
	max-height: 260px;
	overflow-y: auto;
	overflow-x: hidden;
}

.nnl-map-popup .related-posts h2,
.nnl-map-popup .related-posts h3,
.nnl-map-popup .related-posts h4,
.nnl-map-popup .related-posts h5,
.nnl-map-popup .related-posts h6 {
	margin-top: 0;
}

.nnl-map-popup *:first-child {
	margin-top: 0;
}

/* Embed Code Modal */
.map-embed-code textarea.embed-code {
	width: 100%;
	height: 200px;
	resize: vertical;
	font-family: monospace;
}
