/* Contraste de los botones "outline" al pasar el ratón.
 *
 * El tema (admin/amplecss/style.css) los rellena con su color sólido pero
 * deja el texto en negro:
 *
 *     .btn-outline-primary:hover { color:#000; background-color: var(--primary-color) }
 *     .btn:hover                 { color:#3e5569 }
 *
 * Sobre el azul primario —o el verde de éxito, o el rojo de peligro— el
 * texto negro no se lee. Bootstrap resuelve esto poniendo BLANCO sobre los
 * rellenos oscuros y texto oscuro solo sobre los claros (warning, light);
 * aquí se restaura ese criterio usando las variables del propio tema, sin
 * inventar colores nuevos.
 *
 * Las variantes de relleno CLARO (warning, light, cyan, megna, orange) se
 * dejan como están: ahí el texto oscuro es el correcto.
 */
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active,
.btn-outline-secondary:hover,
.btn-outline-secondary:focus,
.btn-outline-secondary:active,
.btn-outline-success:hover,
.btn-outline-success:focus,
.btn-outline-success:active,
.btn-outline-danger:hover,
.btn-outline-danger:focus,
.btn-outline-danger:active,
.btn-outline-info:hover,
.btn-outline-info:focus,
.btn-outline-info:active {
  color: var(--bs-white);
}

/* El icono es un <i> hijo: hereda salvo que el tema le fije color propio. */
.btn-outline-primary:hover i,
.btn-outline-secondary:hover i,
.btn-outline-success:hover i,
.btn-outline-danger:hover i,
.btn-outline-info:hover i {
  color: inherit;
}


/* ─────────────────────────────────────────────────────────────────────────
 * Un <a class="btn"> pierde su color de texto contra base.css.
 *
 * `base.css` trae, con especificidad (0,1,1):
 *
 *     a:link, a:visited { color: var(--link-fg) }
 *
 * y las clases del tema `.btn-primary`, `.btn-success`, ... valen (0,1,0).
 * Gana base.css, asi que CUALQUIER enlace disfrazado de boton quedaba con el
 * gris #3e5569 de los enlaces en vez de su color. No le pasa a <button>: solo
 * a los <a>, que es lo que se usa cuando el boton navega a otra pantalla.
 *
 * El texto va BLANCO por decision del equipo. Queda anotado el contraste
 * medido sobre los rellenos del tema, para quien venga despues:
 *
 *     fondo      gris #3e5569   BLANCO    negro
 *     #2cabe3       2.97:1       2.61:1   8.04:1
 *     #049800       2.03:1       3.82:1   5.50:1
 *     #ff5050       2.41:1       3.22:1   6.52:1
 *     #343a40       1.48:1      11.51:1   1.83:1
 *
 * WCAG AA pide 4.5:1. Si alguna vez se quiere que el blanco tambien lo cumpla,
 * lo que hay que cambiar no es el texto sino el RELLENO: un azul #1b7fa8 da
 * 4.52:1 con blanco, y los demas admiten el mismo oscurecimiento.
 *
 * `warning` y `light` se quedan con texto oscuro: son amarillo y casi blanco,
 * y ahi el blanco directamente no se ve.
 *
 * Se ancla a `a.btn-*`, que vale (0,2,1) y le gana a base.css sin !important.
 */
a.btn-primary:link,   a.btn-primary:visited,
a.btn-secondary:link, a.btn-secondary:visited,
a.btn-success:link,   a.btn-success:visited,
a.btn-info:link,      a.btn-info:visited,
a.btn-danger:link,    a.btn-danger:visited,
a.btn-dark:link,      a.btn-dark:visited {
  color: #fff;
}

a.btn-warning:link, a.btn-warning:visited,
a.btn-light:link,   a.btn-light:visited {
  color: #212529;
}

/* El icono <i> hereda salvo que el tema le ponga color propio. */
a.btn-primary i, a.btn-secondary i, a.btn-success i, a.btn-info i,
a.btn-danger i,  a.btn-warning i,   a.btn-light i,   a.btn-dark i {
  color: inherit;
}
