.snf-ai-disclosure {
	margin: .65rem 0 .8rem;
	clear: both;
}

.snf-ai-badge {
	display: inline-flex;
	align-items: center;
	padding: .25rem .48rem;
	border-radius: 999px;
	color: #fff;
	font-size: .62rem;
	font-weight: 800;
	letter-spacing: .025em;
	line-height: 1.1;
}

.snf-ai-assisted .snf-ai-badge { background: var(--snf-ai-purple, #6D28D9); }
.snf-ai-image .snf-ai-badge { background: var(--snf-ai-teal, #0F766E); }
.snf-ai-text .snf-ai-badge { background: var(--snf-ai-orange, #B45309); }
.snf-ai-deepfake .snf-ai-badge { background: var(--snf-ai-red, #B91C1C); }

.snf-ai-box {
	margin-top: .32rem;
	padding: .5rem .62rem;
	border-left: 3px solid var(--snf-ai-purple, #6D28D9);
	border-radius: 6px;
	background: var(--snf-ai-light-bg, #F7F5FF);
	color: var(--snf-ai-light-text, #202020);
	font-size: .86rem;
	line-height: 1.35;
}

.snf-ai-image .snf-ai-box { border-left-color: var(--snf-ai-teal, #0F766E); }
.snf-ai-text .snf-ai-box { border-left-color: var(--snf-ai-orange, #B45309); }
.snf-ai-deepfake .snf-ai-box { border-left-color: var(--snf-ai-red, #B91C1C); }

.snf-ai-box h2 {
	margin: 0 0 .22rem;
	font-size: .9rem;
	line-height: 1.2;
	color: inherit;
}

.snf-ai-box p {
	margin: .2rem 0;
	color: inherit;
}

.snf-ai-meta,
.snf-ai-link {
	font-size: .76rem;
}

.snf-ai-link a {
	font-weight: 700;
	text-decoration: underline;
}

.snf-ai-policy h2 {
	margin-top: 1.55rem;
}

/* Badge sulla singola immagine. */
.snf-ai-image-wrap {
	position: relative;
	display: inline-block;
	max-width: 100%;
	vertical-align: top;
	line-height: 0;
}

.snf-ai-image-wrap > img {
	display: block;
	max-width: 100%;
	height: auto;
}

.snf-ai-image-badge {
	position: absolute;
	z-index: 8;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2rem;
	padding: .34rem .52rem;
	border-radius: 999px;
	color: var(--snf-ai-image-text, #FFFFFF);
	font-size: .67rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: .035em;
	text-transform: uppercase;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .28);
	pointer-events: none;
	white-space: nowrap;
}

.snf-ai-image-badge--generated { background: var(--snf-ai-image-generated, #0F766E); }
.snf-ai-image-badge--modified { background: var(--snf-ai-image-modified, #1D4ED8); }
.snf-ai-image-badge--synthetic { background: var(--snf-ai-image-synthetic, #B91C1C); }


/*
 * Overlay badge sulle foto autore.
 * Nessuna regola viene applicata direttamente all'immagine: larghezza,
 * altezza, object-fit, display e margini restano quelli del tema/plugin.
 */
.snf-ai-author-overlay-host {
	position: relative !important;
	overflow: visible !important;
}

.snf-ai-author-overlay-host > .snf-ai-author-overlay-badge {
	will-change: transform;
}


/*
 * Badge avatar proporzionale.
 * Il badge mantiene la misura normale su home, articoli e immagini comuni.
 * Soltanto gli avatar/foto autore ricevono una trasformazione di scala.
 */
.snf-ai-image-wrap.snf-ai-author-badge-scaled > .snf-ai-image-badge,
.snf-ai-newsair-badge-host.snf-ai-author-badge-scaled > .snf-ai-image-badge {
	transform: scale(var(--snf-ai-author-scale, 1));
	will-change: transform;
}

/* Fallback per card e slider con background-image, incluso Newsair. */
.snf-ai-newsair-badge-host {
	position: relative !important;
}

.snf-ai-newsair-badge-host > .snf-ai-image-badge {
	line-height: 1;
}

/* Mantiene la didascalia sotto l'immagine. */
.wp-caption .snf-ai-image-wrap,
.wp-block-image .snf-ai-image-wrap,
figure .snf-ai-image-wrap {
	max-width: 100%;
}

@media (prefers-color-scheme: dark) {
	.snf-ai-box {
		background: var(--snf-ai-dark-bg, #211638);
		color: var(--snf-ai-dark-text, #F5F5F5);
	}
}

body.dark-mode .snf-ai-box,
body.wp-dark-mode-active .snf-ai-box,
body[data-theme="dark"] .snf-ai-box,
html[data-theme="dark"] .snf-ai-box,
body.dark .snf-ai-box,
body.theme-dark .snf-ai-box {
	background: var(--snf-ai-dark-bg, #211638);
	color: var(--snf-ai-dark-text, #F5F5F5);
}

@media (max-width: 600px) {
	.snf-ai-badge {
		font-size: .59rem;
		padding: .23rem .42rem;
	}
	.snf-ai-box {
		padding: .48rem .56rem;
		font-size: .84rem;
	}
	.snf-ai-image-badge {
		font-size: .61rem;
		padding: .3rem .44rem;
	}
}


/* Informativa podcast generato con IA. */
.snf-ai-podcast-note {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .55rem .75rem;
	margin: .65rem 0 1.25rem;
	padding: .72rem .85rem;
	border-left: 4px solid var(--snf-ai-purple, #6D28D9);
	border-radius: 7px;
	background: var(--snf-ai-light-bg, #F7F5FF);
	color: var(--snf-ai-light-text, #202020);
	line-height: 1.45;
}

.snf-ai-podcast-badge {
	display: inline-flex;
	align-items: center;
	padding: .38rem .62rem;
	border-radius: 999px;
	background: var(--snf-ai-purple, #6D28D9);
	color: #fff;
	font-size: .69rem;
	font-weight: 900;
	letter-spacing: .035em;
	line-height: 1;
	white-space: nowrap;
}

.snf-ai-podcast-text {
	flex: 1 1 260px;
	margin: 0 !important;
	color: inherit;
	font-size: .88rem;
}

.snf-ai-podcast-tool {
	font-weight: 600;
}

.snf-ai-podcast-fallback[hidden] {
	display: none !important;
}

@media (prefers-color-scheme: dark) {
	.snf-ai-podcast-note {
		background: var(--snf-ai-dark-bg, #211638);
		color: var(--snf-ai-dark-text, #F5F5F5);
	}
}

body.dark-mode .snf-ai-podcast-note,
body.wp-dark-mode-active .snf-ai-podcast-note,
body[data-theme="dark"] .snf-ai-podcast-note,
html[data-theme="dark"] .snf-ai-podcast-note,
body.dark .snf-ai-podcast-note,
body.theme-dark .snf-ai-podcast-note {
	background: var(--snf-ai-dark-bg, #211638);
	color: var(--snf-ai-dark-text, #F5F5F5);
}

@media (max-width: 600px) {
	.snf-ai-podcast-note {
		align-items: flex-start;
		padding: .65rem .72rem;
	}
	.snf-ai-podcast-badge {
		font-size: .64rem;
	}
}


/*
 * Pagina autore: badge in flusso tra foto e descrizione.
 * La riga occupa tutta la larghezza disponibile e impedisce sovrapposizioni.
 */
.snf-ai-author-page-badge-row {
	display: flex;
	flex: 0 0 100%;
	width: 100%;
	justify-content: center;
	align-items: center;
	clear: both;
	margin: 4px 0 10px;
	line-height: 1;
}

.snf-ai-author-page-badge-row > .snf-ai-image-badge {
	position: static !important;
	margin: 0;
}
