/**
 * Artwork Text Effects — Typewriter block styles
 */

.ate-typewriter {
	position: relative;
}

/* SEO layer — visibile ai crawler, nascosto visivamente da JS a runtime */
.ate-seo-layer {
	display: inline;
}

.ate-tw-visual {
	display: none;
}

.ate-typewriter.is-ready .ate-tw-visual {
	display: inline;
}

/* ── Cursor ── */
.ate-tw-cursor {
	display: inline-block !important;
	width: 3px !important;
	height: 0.82em !important;
	margin-left: 4px !important;
	vertical-align: middle !important;
	position: relative !important;
	top: -0.04em !important;
	border-radius: 0 !important;
}

@keyframes ate-blink {
	0%,  45% { opacity: 1; }
	55%, 100% { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
	.ate-tw-cursor {
		display: none !important;
	}
}

/* ── Preview editor WPBakery ─────────────────────────────────────────────── */
.vc_element .ate-tw-visual,
.wpb_column .ate-tw-visual,
.vc_element-container .ate-tw-visual,
.vc_row .ate-tw-visual {
	display: inline !important;
}

.vc_element .ate-seo-layer,
.wpb_column .ate-seo-layer,
.vc_element-container .ate-seo-layer,
.vc_row .ate-seo-layer {
	display: none !important;
}

/* Placeholder prima frase — usa data-ate-preview sul wrapper,
   visibile solo se lo span testo è vuoto */
.vc_element .ate-typewriter:not(.is-ready) .ate-tw-text:empty::before,
.wpb_column .ate-typewriter:not(.is-ready) .ate-tw-text:empty::before,
.vc_element-container .ate-typewriter:not(.is-ready) .ate-tw-text:empty::before,
.vc_row .ate-typewriter:not(.is-ready) .ate-tw-text:empty::before {
	content: attr(data-ate-preview);
	opacity: 0.5;
	font-style: italic;
}

/* Aspetto indipendente dal tag (.ate-look-*): CSS generato dal tema, vedi src/shared/LookStyles.php */
