/**
 * SwiftFind — Reset acotado + utilidades, todo bajo `.wvn-search-app`.
 * No afecta a estilos globales de WordPress/WooCommerce (encapsulado en la raíz).
 */

@layer wvn-reset {
	.wvn-search-app *,
	.wvn-search-app *::before,
	.wvn-search-app *::after {
		box-sizing: border-box;
	}
	.wvn-search-app button {
		font-family: inherit;
		cursor: pointer;
	}
	.wvn-search-app a {
		color: inherit;
		text-decoration: none;
	}
}

@layer wvn-utilities {
	/* Texto solo para lectores de pantalla. */
	.wvn-sr-only {
		position: absolute !important;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
		border: 0;
	}

	/* Tipografía display. */
	.wvn-display {
		font-family: var(--wvn-font-display);
		letter-spacing: var(--wvn-tracking-tight);
	}

	/* Tecla (kbd) reutilizable. */
	.wvn-kbd {
		font-family: var(--wvn-font-mono);
		font-size: 11px;
		background: var(--wvn-color-bg);
		border: 1px solid var(--wvn-color-line);
		padding: 2px 7px;
		border-radius: 5px;
		color: var(--wvn-color-ink-2);
	}

	/* Botón reutilizable (variantes). */
	.wvn-button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: var(--wvn-space-3);
		border: none;
		border-radius: var(--wvn-radius-pill);
		font-weight: 600;
		font-size: 13px;
		padding: 11px 20px;
	}
	.wvn-button--primary {
		background: var(--wvn-color-ink);
		color: var(--wvn-color-on-ink);
		text-transform: uppercase;
		letter-spacing: var(--wvn-tracking-caps);
		box-shadow: var(--wvn-shadow-float);
	}
	.wvn-button--primary:hover { background: #000; }
	.wvn-button--accent {
		background: var(--wvn-color-accent);
		color: var(--wvn-color-ink);
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.05em;
		font-size: 12.5px;
	}
	.wvn-button--accent:hover { background: var(--wvn-color-accent-hover); }
	.wvn-button--ghost {
		background: transparent;
		color: var(--wvn-color-on-ink);
		border: 1px solid rgba(255, 255, 255, .3);
		font-size: 12.5px;
		font-weight: 600;
	}

	@media (prefers-reduced-motion: reduce) {
		.wvn-search-app *,
		.wvn-search-app *::before,
		.wvn-search-app *::after {
			animation-duration: 0.001ms !important;
			animation-iteration-count: 1 !important;
			transition-duration: 0.001ms !important;
			scroll-behavior: auto !important;
		}
	}
}

/**
 * Plantilla «SwiftFind Fullscreen»: el buscador ocupa toda la página sin
 * cabecera ni pie. Neutraliza el block-gap del tema (que mete un margen
 * superior) y el padding del wrapper para que la app pegue a los bordes.
 */
@layer wvn-overrides {
	.wvn-fullscreen-template {
		min-height: 100vh;
		margin: 0;
		padding: 0;
	}
	.wvn-fullscreen-template > .wvn-panel__entry-content,
	.wvn-fullscreen-template .wp-block-post-content {
		margin: 0;
		padding: 0;
	}
	/* El editor puede dejar un <p> vacío antes/después del shortcode. */
	.wvn-fullscreen-template .wvn-panel__entry-content > p:empty {
		display: none;
	}
	/* Sin margen del block-gap encima de la app. */
	.wvn-fullscreen-template .wvn-search-app {
		margin: 0;
	}
}
