.plm-wrapper {
	position: fixed;
	inset: 0;
	pointer-events: none;
	z-index: 9999;
}

.plm-group {
	position: fixed;
	display: flex;
	flex-direction: column;
	gap: 8px;
	pointer-events: none;
}

.plm-tl {
	top: 12px;
	left: 12px;
	align-items: flex-start;
}

.plm-tr {
	top: 12px;
	right: 12px;
	align-items: flex-end;
}

.plm-bl {
	bottom: 12px;
	left: 12px;
	align-items: flex-start;
}

.plm-br {
	bottom: 12px;
	right: 12px;
	align-items: flex-end;
}

.plm-item {
	position: relative;
	background: #fff;
	padding: 6px;
	border-radius: 8px;
	box-shadow: 0 2px 10px rgba( 0, 0, 0, 0.18 );
	pointer-events: auto;
	line-height: 0;
}

/* Az alap (asztali) méret is CSS változóból jön, hogy a tablet/mobil
   médialekérdezések egyszerűen, !important nélkül felülírhassák. */
.plm-item img {
	display: block;
	width: var( --plm-width, 90px );
	max-width: 100%;
	height: auto;
}

.plm-item.plm-hidden {
	display: none;
}

.plm-close {
	position: absolute;
	top: -8px;
	right: -8px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var( --plm-close-bg, #333 );
	color: var( --plm-close-color, #fff );
	border: 2px solid var( --plm-close-border, #fff );
	cursor: pointer;
	font-size: 14px;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.plm-close:hover,
.plm-close:focus-visible {
	background: var( --plm-close-hover-bg, #dc3232 );
}

/* Tablet méret: a sarkokban marad, de a tablet szélesség admin mezőből jövő
   értéket használja (logónként külön állítható). */
@media ( max-width: 782px ) and ( min-width: 601px ) {
	.plm-item img {
		width: var( --plm-tablet-width, 60px );
	}

	.plm-group {
		gap: 6px;
	}
}

/* Mobil nézet: ugyanaz a forma (sarkokban elhelyezett logók), mint tableten —
   csak a méret admin mezőből jövő, logónként külön állítható értéke más. */
@media ( max-width: 600px ) {
	.plm-item img {
		width: var( --plm-mobile-width, 60px );
	}

	.plm-group {
		gap: 6px;
	}
}
