/**
 * overrides-bootstrap.css — Reasignación de variables internas de Bootstrap.
 *
 * Capa 3 de la arquitectura CSS de cuatro capas (Arquitectura v1.0,
 * Sección de Sistema CSS). Bootstrap 5.3 expone sus propios custom
 * properties (--bs-primary, --bs-body-font-family, --bs-border-radius,
 * etc.). Este archivo los reasigna UNA SOLA VEZ, en :root, a los tokens
 * propios de tokens.css.
 *
 * Esto evita el antipatrón de sobreescribir clases de Bootstrap una por
 * una (ej. .btn-primary { background: #006FB3 !important; }), que es
 * frágil y se rompe con cualquier actualización de versión de Bootstrap.
 * Al reasignar las variables que Bootstrap ya usa internamente en sus
 * propias reglas, los componentes nativos (botones, alertas, badges,
 * navbar) heredan la paleta institucional automáticamente.
 *
 * Requiere que tokens.css se haya cargado antes (ver dependencias
 * declaradas en inc/enqueue.php).
 *
 * @package MinvuBiobio
 */

:root {

	/* Color de marca: Bootstrap usa --bs-primary en botones, links activos,
	   bordes de foco y elementos "primary" de sus componentes nativos. */
	--bs-primary: var( --color-primario );
	--bs-primary-rgb: 0, 111, 179;

	/* --bs-secondary se reasigna al color acento (gris azulado), NO al
	   color secundario institucional (#FE6565). El color secundario está
	   reservado exclusivamente para alertas de acción primaria
	   (Arquitectura v1.0, Sistema de Alertas) y nunca debe propagarse a
	   componentes genéricos de Bootstrap como botones "secondary". */
	--bs-secondary: var( --color-acento );
	--bs-secondary-rgb: 168, 183, 199;

	/* Color de error de formularios y validación. */
	--bs-danger: var( --color-error );

	/* Tipografía y color de cuerpo de texto por defecto. */
	--bs-body-font-family: var( --font-base );
	--bs-body-color: var( --color-gris-oscuro );
	--bs-body-bg: var( --color-blanco );

	/* Bordes y separadores: Bootstrap usa --bs-border-color en tablas,
	   cards, inputs y el navbar. */
	--bs-border-color: var( --color-acento );

	/* Encabezados (h1-h6) heredan el color terciario de alto contraste,
	   no el negro puro ni el color de cuerpo de texto. */
	--bs-heading-color: var( --color-terciario );

	/* Enlaces: color primario por defecto, sin subrayado decorativo
	   adicional al ya provisto por Bootstrap (que cumple WCAG por sí solo
	   al mantener subrayado en el cuerpo de texto). */
	--bs-link-color: var( --color-primario );
	--bs-link-hover-color: var( --color-terciario );
}

/**
 * Bootstrap 5.3 declara --bs-heading-color únicamente como variable, pero
 * no la aplica automáticamente a los selectores h1-h6 en todas sus
 * versiones de build. Se fuerza aquí de forma explícita para garantizar
 * que el color terciario se aplique sin depender de esa implementación
 * interna, que puede variar entre builds de Bootstrap servidos por CDN.
 */
h1,
h2,
h3,
h4,
h5,
h6 {
	color: var( --bs-heading-color );
}
