.nwa-placement[hidden] { display: none !important; }
.nwa-placement { position: relative; clear: both; max-width: 100%; }
.nwa-placement img { max-width: 100%; height: auto; }
.nwa-align-left { float: left; margin-right: 1em; }
.nwa-align-right { float: right; margin-left: 1em; }
.nwa-align-center { text-align: center; }
.nwa-ad__label { display: block; font-size: 11px; line-height: 1.4; letter-spacing: .04em; text-transform: uppercase; opacity: .65; margin-bottom: 4px; }
.nwa-ad__sponsor-line { display: block; font-size: 13px; margin-bottom: 4px; }

.nwa-placement--sticky_bar,
.nwa-placement--sticky_top { position: fixed; left: 0; right: 0; z-index: 99990; background: #fff; box-shadow: 0 0 12px rgba(0, 0, 0, .15); text-align: center; padding: 8px 40px; }
.nwa-placement--sticky_bar { bottom: 0; }
.nwa-placement--sticky_top { top: 0; }
.nwa-placement--sticky_left,
.nwa-placement--sticky_right { position: fixed; top: 50%; transform: translateY(-50%); z-index: 99980; }
.nwa-placement--sticky_left { left: 8px; }
.nwa-placement--sticky_right { right: 8px; }
.nwa-placement--popup { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 99995; background: #fff; padding: 24px; max-width: 90vw; max-height: 90vh; overflow: auto; box-shadow: 0 0 0 100vmax rgba(0, 0, 0, .5); }

.nwa-close { position: absolute; top: 4px; right: 8px; border: 0; background: none; font-size: 22px; line-height: 1; cursor: pointer; color: inherit; padding: 4px; }

@media (max-width: 1024px) {
	.nwa-placement--sticky_left,
	.nwa-placement--sticky_right { display: none !important; }
}

/* Block themes: line content ads up with the post text. */
.is-layout-constrained > .nwa-placement:not(.nwa-align-left):not(.nwa-align-right) { max-width: var(--wp--style--global--content-size, 100%); margin-left: auto; margin-right: auto; }

/* Vignette: full screen between pages. */
.nwa-placement--vignette { position: fixed; inset: 0; z-index: 99999; background: rgba(0, 0, 0, .85); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; padding: 48px 16px; overflow: auto; }
.nwa-placement--vignette .nwa-slot { background: #fff; padding: 16px; max-width: 100%; }
.nwa-placement--vignette .nwa-close { color: #fff; top: 12px; right: 16px; font-size: 28px; }
.nwa-vignette__continue { border: 0; border-radius: 4px; padding: 10px 20px; font-size: 15px; cursor: pointer; background: #fff; color: #111; }
.nwa-vignette-open, .nwa-vignette-open body { overflow: hidden; }

/* Admin-only diagnostics. */
.nwa-debug-note { border: 2px dashed #d63638; background: #fff8f8; color: #50575e; font: 13px/1.5 sans-serif; padding: 8px 12px; margin: 8px 0; }
.nwa-diagnostics { position: fixed; left: 12px; bottom: 12px; z-index: 100000; max-width: min(420px, calc(100vw - 24px)); max-height: 70vh; overflow: auto; background: #fff; color: #1d2327; font: 13px/1.5 sans-serif; border-radius: 6px; box-shadow: 0 2px 16px rgba(0, 0, 0, .25); }
.nwa-diagnostics summary { cursor: pointer; padding: 8px 12px; font-weight: 600; background: #2271b1; color: #fff; border-radius: 6px; }
.nwa-diagnostics p { margin: 8px 12px 0; opacity: .7; }
.nwa-diagnostics ul { list-style: none; margin: 0; padding: 4px 12px 12px; }
.nwa-diagnostics li { padding: 6px 0 6px 10px; border-left: 3px solid #d63638; margin-top: 6px; }
.nwa-diagnostics li.is-ok { border-color: #00a32a; }
.nwa-diagnostics a { color: #2271b1; font-weight: 600; }
