/* Navegación instantánea: transición entre páginas y barra de progreso. */

/* Navegaciones normales (pre-renderizadas o no): Chrome, Edge y Safari 18.2+. */
@view-transition {
	navigation: auto;
}

/*
 * La cabecera y el pie no funden: se quedan quietos entre páginas. El nombre
 * solo se pone mientras dura la transición (clase dm-vt en <html>): un
 * view-transition-name fijo convierte la cabecera en un contexto de
 * apilamiento y los desplegables del menú (mega menú de Neve) quedan por
 * debajo del contenido.
 */
.dm-vt header.header {
	view-transition-name: dm-header;
}
.dm-vt .site-footer {
	view-transition-name: dm-footer;
}

::view-transition-old(root),
::view-transition-new(root) {
	animation-duration: 160ms;
	animation-timing-function: ease-out;
}
::view-transition-group(dm-header),
::view-transition-group(dm-footer) {
	animation-duration: 0s;
}

@media (prefers-reduced-motion: reduce) {
	@view-transition {
		navigation: none;
	}
	::view-transition-group(*),
	::view-transition-old(*),
	::view-transition-new(*) {
		animation: none !important;
	}
}

#dm-headless-progress {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100000;
	width: 100%;
	height: 2px;
	background: var(--nv-primary-accent, currentColor);
	transform: scaleX(0);
	transform-origin: 0 50%;
	opacity: 0;
	pointer-events: none;
	transition: transform 0.6s ease-out, opacity 0.2s;
}
.dm-headless-loading #dm-headless-progress {
	opacity: 1;
	transform: scaleX(0.7);
	transition: transform 4s cubic-bezier(0.1, 0.6, 0.3, 1), opacity 0.1s;
}
.admin-bar #dm-headless-progress {
	top: var(--wp-admin--admin-bar--height, 32px);
}
#dm-headless-status {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}
main#content:focus {
	outline: none;
}
