.lspx-placeholder{display:none!important}.lspx-external-image-wrapper{width:100%;margin-top:15px;margin-bottom:15px}.lspx-external-image-wrapper.lspx-align-left{margin-left:0;margin-right:auto}.lspx-external-image-wrapper.lspx-align-center{margin-left:auto;margin-right:auto}.lspx-external-image-wrapper.lspx-align-right{margin-left:auto;margin-right:0}.lspx-external-image{display:block;max-width:100%;height:auto}.lspx-align-center .lspx-external-image{margin-left:auto;margin-right:auto}.lspx-align-right .lspx-external-image{margin-left:auto}.lspx-debug-panel{position:fixed;right:12px;bottom:12px;z-index:999999;max-width:360px;padding:10px 12px;background:#111;color:#fff;font:12px/1.4 monospace;white-space:pre-wrap;border-radius:4px;box-shadow:0 3px 12px rgba(0,0,0,.3)}
.lspx-featured-group{width:100%;margin:0 0 20px}.lspx-featured-group .lspx-external-image-wrapper{margin-top:0;margin-bottom:14px}.lspx-featured-link{display:block;text-decoration:none;border:0}.lspx-featured-link .lspx-external-image{cursor:pointer}.lspx-featured-group:empty{display:none!important}
.lspx-kind-featured-post{margin-top:16px;margin-bottom:16px}.lspx-featured-post-link{display:block;color:inherit;text-decoration:none;border:0}.lspx-featured-post-link:hover{text-decoration:none}.lspx-featured-post-title{font-size:clamp(17px,4.5vw,23px);line-height:1.3;font-weight:700;margin-top:9px;color:inherit}.lspx-featured-post-link:focus{outline:2px solid currentColor;outline-offset:3px}.lspx-featured-post-link .lspx-external-image{width:100%}

/* Integrated Surprise Reveal */
.lspx-external-image-wrapper.lspx-has-surprise{position:relative}
.lspx-surprise-box{
	position:absolute;
	z-index:9999;
	box-sizing:border-box;
	max-width:calc(100% - 16px);
	max-height:calc(100% - 16px);
	overflow:auto;
	padding:12px 14px;
	border-radius:9px;
	background:rgba(255,255,255,.97);
	color:#111;
	box-shadow:0 5px 22px rgba(0,0,0,.30);
	font-size:15px;
	line-height:1.45;
	text-align:left;
}
.lspx-surprise-box[hidden]{display:none!important}
.lspx-surprise-pos-top{top:8px;left:50%;transform:translateX(-50%)}
.lspx-surprise-pos-bottom{bottom:8px;left:50%;transform:translateX(-50%)}
.lspx-surprise-pos-left{left:8px;top:50%;transform:translateY(-50%)}
.lspx-surprise-pos-right{right:8px;top:50%;transform:translateY(-50%)}
.lspx-surprise-pos-center{left:50%;top:50%;transform:translate(-50%,-50%)}
.lspx-surprise-code{
	margin:0;
	white-space:pre-wrap;
	word-break:break-word;
	font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
	font-size:13px;
}
.lspx-surprise-loading{font-style:italic;opacity:.92}
.lspx-has-surprise .lspx-external-image{cursor:pointer}
@media (max-width:480px){
	.lspx-surprise-box{padding:10px 11px;font-size:14px}
}

/* size-matched hidden Surprise click area */
.lspx-surprise-hotspot{
	position:absolute;
	z-index:10000;
	display:block;
	margin:0;
	padding:0;
	border:0;
	outline:0;
	background:transparent;
	box-shadow:none;
	opacity:1;
	cursor:pointer;
	-webkit-appearance:none;
	appearance:none;
	touch-action:manipulation;
}
.lspx-surprise-hotspot[hidden]{display:none!important}
.lspx-surprise-hotspot:focus{
	opacity:1;
	outline:1px dashed transparent;
}

/* faint hidden-code image overlay */
.lspx-surprise-hotspot{
	overflow:visible;
}
.lspx-surprise-faint-image{
	display:block;
	width:100%;
	height:100%;
	object-fit:contain;
	opacity:.10;
	pointer-events:none;
	user-select:none;
	-webkit-user-drag:none;
	filter:none;
}

/* Ad Code is rendered as a normal visible block before the external image. */
.lspx-ad-stack{
	position:relative;
}
.lspx-ad-layer{
	position:relative;
	z-index:auto;
	display:block;
	box-sizing:border-box;
	width:100%;
	min-width:1px;
	min-height:1px;
	height:auto;
	margin:0 0 12px;
	overflow:visible;
	pointer-events:auto;
	user-select:auto;
	text-align:center;
}
.lspx-ad-layer:empty{
	display:none;
}
.lspx-ad-layer script{
	display:none !important;
}
.lspx-ad-layer ins.adsbygoogle{
	display:block;
	max-width:100%;
}
.lspx-ad-layer img{
	max-width:100%;
	height:auto;
}

/* External image remains the normal interactive/base layer. */
.lspx-external-image-wrapper,
.lspx-external-image-wrapper .lspx-external-image,
.lspx-external-image-wrapper .lspx-featured-link,
.lspx-external-image-wrapper .lspx-featured-post-link{
	pointer-events:auto;
}

/* Third Surprise box: visible ad creative over the external image.
 * No transparent click hotspot is used; the rendered ad/iframe receives clicks directly. */
.lspx-external-image-wrapper.lspx-has-surprise-ad{
	position:relative;
}
.lspx-surprise-ad-layer{
	position:absolute;
	z-index:9000;
	display:block;
	box-sizing:border-box;
	min-width:1px;
	min-height:1px;
	height:auto;
	overflow:visible;
	pointer-events:auto;
	user-select:auto;
	text-align:center;
}
.lspx-surprise-ad-layer:empty{
	display:none;
}
.lspx-surprise-ad-layer script{
	display:none!important;
}
.lspx-surprise-ad-layer ins.adsbygoogle{
	display:block;
	max-width:100%;
}
.lspx-surprise-ad-layer img{
	max-width:100%;
	height:auto;
}
.lspx-surprise-ad-layer iframe{
	max-width:100%;
}



/* Stack-order adjustment: keep the external image above every overlay container. */
.lspx-external-image-wrapper{
	position:relative;
}
.lspx-external-image-wrapper .lspx-external-image,
.lspx-external-image-wrapper .lspx-featured-link,
.lspx-external-image-wrapper .lspx-featured-post-link{
	position:relative;
	z-index:10001;
}
.lspx-external-image-wrapper .lspx-surprise-box,
.lspx-external-image-wrapper .lspx-surprise-hotspot,
.lspx-external-image-wrapper .lspx-surprise-ad-layer{
	z-index:1 !important;
}

/* External-image top-overlay stack adjustment.
 * CSS-only: keep the external image visually above every plugin overlay container. */
.lspx-external-image-wrapper{
	position:relative;
}

/* Every plugin-generated overlay/content layer stays underneath the external image. */
.lspx-external-image-wrapper .lspx-ad-layer,
.lspx-external-image-wrapper .lspx-surprise-box,
.lspx-external-image-wrapper .lspx-surprise-hotspot,
.lspx-external-image-wrapper .lspx-surprise-ad-layer{
	z-index:1 !important;
}

/* The normal Ad Code layer is also moved into the same underlying stack
 * so it no longer occupies visible space above the external image. */
.lspx-external-image-wrapper .lspx-ad-layer{
	position:absolute !important;
	inset:0;
	margin:0;
	width:100%;
	height:100%;
	max-width:100%;
	max-height:100%;
	overflow:hidden;
}

/* External image/link is the top visual overlay. */
.lspx-external-image-wrapper .lspx-external-image,
.lspx-external-image-wrapper .lspx-featured-link,
.lspx-external-image-wrapper .lspx-featured-post-link{
	position:relative;
	z-index:10001 !important;
}


/* safe external-image reveal.
 * The first deliberate click fades only the top external-image layer.
 * That click is consumed; underlying content becomes available for a later,
 * separate user click. Existing underlying content/settings are unchanged. */
.lspx-external-image-wrapper .lspx-external-image{
	transition:opacity .18s ease;
}

.lspx-external-image-wrapper.lspx-image-revealed .lspx-external-image{
	opacity:0 !important;
	pointer-events:none !important;
}
.lspx-external-image-wrapper.lspx-image-revealed .lspx-featured-link,
.lspx-external-image-wrapper.lspx-image-revealed .lspx-featured-post-link{
	pointer-events:none !important;
}


/* single 10–300 content sizing control.
 * The external image remains unchanged. Under-image content may be larger than
 * the image so its outer portion can be visible; no click-forwarding is added. */
.lspx-external-image-wrapper{
	overflow:visible;
}
.lspx-external-image-wrapper .lspx-ad-layer,
.lspx-external-image-wrapper .lspx-surprise-ad-layer{
	max-width:none !important;
	max-height:none !important;
	overflow:visible !important;
}

/* stacking-only override.
 * External image stays as the lower/base layer; all plugin overlay containers
 * render above it. No settings, data attributes, ad processing or JS behavior changed. */
.lspx-external-image-wrapper .lspx-external-image,
.lspx-external-image-wrapper .lspx-featured-link,
.lspx-external-image-wrapper .lspx-featured-post-link{
	position:relative;
	z-index:1 !important;
}
.lspx-external-image-wrapper .lspx-ad-layer,
.lspx-external-image-wrapper .lspx-surprise-box,
.lspx-external-image-wrapper .lspx-surprise-hotspot,
.lspx-external-image-wrapper .lspx-surprise-ad-layer{
	z-index:10001 !important;
}


/* manual 0–100 opacity control for every overlay layer above the external image. */
.lspx-external-image-wrapper .lspx-ad-layer,
.lspx-external-image-wrapper .lspx-surprise-box,
.lspx-external-image-wrapper .lspx-surprise-hotspot,
.lspx-external-image-wrapper .lspx-surprise-ad-layer{
	opacity:var(--lspx-overlay-opacity,1) !important;
}

/* Fully visible overlays keep their normal existing interaction behavior. */
.lspx-external-image-wrapper:not(.lspx-overlay-interaction-disabled) .lspx-ad-layer,
.lspx-external-image-wrapper:not(.lspx-overlay-interaction-disabled) .lspx-surprise-box,
.lspx-external-image-wrapper:not(.lspx-overlay-interaction-disabled) .lspx-surprise-hotspot,
.lspx-external-image-wrapper:not(.lspx-overlay-interaction-disabled) .lspx-surprise-ad-layer{
	pointer-events:auto;
}

/* Partially transparent overlays are visual-only and do not capture clicks. */
.lspx-external-image-wrapper.lspx-overlay-interaction-disabled .lspx-ad-layer,
.lspx-external-image-wrapper.lspx-overlay-interaction-disabled .lspx-surprise-box,
.lspx-external-image-wrapper.lspx-overlay-interaction-disabled .lspx-surprise-hotspot,
.lspx-external-image-wrapper.lspx-overlay-interaction-disabled .lspx-surprise-ad-layer{
	pointer-events:none !important;
}

/* responsive YouTube embed, created only after source-verified mobile verification. */
.lspx-youtube-wrapper{
	position:relative;
	width:100%;
	aspect-ratio:16 / 9;
	margin-top:15px;
	margin-bottom:15px;
	background:#000;
	overflow:hidden;
}
.lspx-youtube-wrapper.lspx-align-left{margin-left:0;margin-right:auto}
.lspx-youtube-wrapper.lspx-align-center{margin-left:auto;margin-right:auto}
.lspx-youtube-wrapper.lspx-align-right{margin-left:auto;margin-right:0}
.lspx-youtube-iframe{
	position:absolute;
	inset:0;
	display:block;
	width:100%;
	height:100%;
	border:0;
}
