/* Ajustes finos que las utilidades de Tailwind (por CDN) no cubren. */

html,
body {
	margin: 0;
	padding: 0;
	background-color: var(--infonacion-surface, #f8fafd);
}

/* Oculta la barra de scroll en tiras horizontales (ticker, menú móvil). */
.scrollbar-none {
	-ms-overflow-style: none;
	scrollbar-width: none;
}
.scrollbar-none::-webkit-scrollbar {
	display: none;
}

/* line-clamp de respaldo (Tailwind CDN ya trae la utilidad, esto es refuerzo). */
.line-clamp-2 {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.line-clamp-3 {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Ítem de menú activo: subrayado azul, como en la maqueta. */
.current-menu-item > a > span,
.current-menu-ancestor > a > span,
.current_page_parent > a > span {
	color: var(--infonacion-primary, #0468BE) !important;
	border-color: var(--infonacion-primary, #0468BE) !important;
	font-weight: 700;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible {
	outline: 2px solid var(--infonacion-primary, #0468BE);
	outline-offset: 2px;
}

/* Contenido de artículo (bloques de Gutenberg) con tipografía editorial. */
.infonacion-article-body {
	font-family: 'Newsreader', Georgia, serif;
	font-size: 1.125rem;
	line-height: 1.75;
	color: #141d28;
}
.infonacion-article-body p {
	margin: 0 0 1.25em;
}
.infonacion-article-body h2,
.infonacion-article-body h3 {
	font-family: 'Newsreader', Georgia, serif;
	color: var(--infonacion-primary, #0468BE);
	font-weight: 600;
	margin: 1.75em 0 0.6em;
}
.infonacion-article-body a {
	color: var(--infonacion-primary, #0468BE);
	text-decoration: underline;
	text-underline-offset: 3px;
}
.infonacion-article-body blockquote {
	font-style: italic;
	font-size: 1.25rem;
	border-left: 3px solid var(--infonacion-primary, #0468BE);
	padding-left: 1.5rem;
	margin: 1.75em 0;
	color: #141d28;
}
.infonacion-article-body img {
	max-width: 100%;
	height: auto;
}
.infonacion-article-body figcaption {
	font-family: Manrope, sans-serif;
	font-size: 0.8125rem;
	color: #3f4957;
	margin-top: 0.5rem;
}

/* Franja de anuncios: si un widget viene vacío, colapsa sin dejar hueco. */
.infonacion-ad-slot:empty {
	display: none;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}
