.nsi-wrap {
	margin: 28px 0;
	padding: 16px 0;
	border-top: 1px solid #ececec;
	border-bottom: 1px solid #ececec;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
}

.nsi-heading {
	font-weight: 700;
	font-size: 15px;
	color: #222;
	margin-right: 4px;
}

.nsi-icons {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 10px;
}

.nsi-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	color: #fff;
	background: #555;
	transition: opacity .2s ease;
	text-decoration: none;
}

/* Fade on hover — matches the AddToAny Social Kit effect.
   Lock the colour so the theme's a:hover rule can't recolour the
   currentColor glyph; only the opacity should change. */
.nsi-icon:hover,
.nsi-icon:focus {
	opacity: .7;
	color: #fff;
}

.nsi-icon svg {
	width: 19px;
	height: 19px;
	display: block;
}

/* Compact variant — used on short posts (too few <p>/<div> to place the icons
   mid-content) so the row sits neatly next to the content instead of as a
   heavy full-width bar with borders. */
.nsi-wrap--compact {
	margin: 14px 0;
	padding: 0;
	border: 0;
	gap: 10px;
}

/* Brand colours */
.nsi-facebook  { background: #1877f2; }
.nsi-twitter   { background: #000000; }
.nsi-instagram { background: radial-gradient(circle at 30% 110%, #fdf497 0%, #fd5949 45%, #d6249f 60%, #285aeb 90%); }
.nsi-youtube   { background: #ff0000; }
.nsi-linkedin  { background: #0a66c2; }
.nsi-whatsapp  { background: #25d366; }
.nsi-telegram  { background: #229ed9; }

@media (max-width: 480px) {
	.nsi-wrap { justify-content: center; }
}

/* ─── Gratitude block (bottom of post) ───────────────────────────────── */
.nsi-thanks {
	max-width: 720px;
	margin: 40px auto;
	position: relative;
	overflow: hidden;
	border-radius: 18px;
	padding: 34px 30px;
	text-align: center;
	color: #fff;
	/* default backdrop — overridden inline by the admin background colours/image */
	background: linear-gradient(160deg, #20212a 0%, #0f1014 100%);
	background-size: cover;
	background-position: center;
	border: 1px solid rgba(255,255,255,.08);
	box-shadow: 0 18px 44px -20px rgba(0, 0, 0, .65);
}
/* dark wash over a background IMAGE only, so the photo never fights the text */
.nsi-thanks.nsi-has-image::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(10,10,14,.35) 0%, rgba(10,10,14,.55) 100%);
	pointer-events: none;
}
/* faint corner sheen for a polished edge */
.nsi-thanks::after {
	content: "";
	position: absolute;
	top: -90px; right: -70px;
	width: 240px; height: 240px;
	background: radial-gradient(circle, rgba(255,255,255,.06) 0%, rgba(255,255,255,0) 70%);
	pointer-events: none;
}

/* centred overlay panel — gives the text a consistent dark backing so it never
   merges with the background colour or image sitting behind it */
.nsi-thanks-inner {
	position: relative;
	z-index: 1;
	max-width: 560px;
	margin: 0 auto;
	padding: 32px 28px 30px;
	border-radius: 14px;
	background: rgba(12,13,18,.58);
	border: 1px solid rgba(255,255,255,.08);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
}
.nsi-thanks-inner.nsi-ov-none {
	background: transparent;
	border-color: transparent;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}
.nsi-thanks-inner.nsi-ov-light  { background: rgba(12,13,18,.38); }
.nsi-thanks-inner.nsi-ov-medium { background: rgba(12,13,18,.58); }
.nsi-thanks-inner.nsi-ov-strong { background: rgba(8,9,12,.74); }

.nsi-thanks-heart {
	width: 48px; height: 48px;
	margin: 0 auto 14px;
	display: flex; align-items: center; justify-content: center;
	border-radius: 50%;
	background: rgba(204,1,0,.92);
	box-shadow: 0 6px 16px -4px rgba(204,1,0,.6);
}
.nsi-thanks-heart svg { width: 24px; height: 24px; color: #fff; }

.nsi-thanks h3 {
	margin: 0 0 8px;
	font-size: 26px;
	font-weight: 800;
	line-height: 1.3;
	color: #fff;
}
.nsi-thanks p {
	margin: 0 auto 24px;
	max-width: 480px;
	font-size: 15.5px;
	line-height: 1.7;
	color: rgba(255,255,255,.86);
}

.nsi-thanks-icons {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
}
.nsi-thanks-icons a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px; height: 44px;
	border-radius: 50%;
	background: #fff;
	transition: opacity .2s ease, transform .2s ease;
	text-decoration: none;
}
.nsi-thanks-icons a:hover,
.nsi-thanks-icons a:focus {
	opacity: .82;
	transform: translateY(-2px);
}
.nsi-thanks-icons svg { width: 21px; height: 21px; display: block; }

/* brand colour on the glyph; chips stay white on the dark card */
.nsi-thanks-icons .t-facebook  { color: #1877f2; }
.nsi-thanks-icons .t-twitter   { color: #000000; }
.nsi-thanks-icons .t-instagram { color: #d6249f; }
.nsi-thanks-icons .t-youtube   { color: #ff0000; }
.nsi-thanks-icons .t-linkedin  { color: #0a66c2; }
.nsi-thanks-icons .t-whatsapp  { color: #25d366; }
.nsi-thanks-icons .t-telegram  { color: #229ed9; }

@media (max-width: 480px) {
	.nsi-thanks { padding: 18px 14px; border-radius: 14px; }
	.nsi-thanks-inner { padding: 26px 18px 24px; }
	.nsi-thanks h3 { font-size: 22px; }
}
