/*
 * Tras el Nombre · Interaction polish v1 · RC5.26
 *
 * Capa final deliberadamente pequeña. Se carga después del CSS global,
 * responsive y de página para que los estados de interacción no dependan
 * de qué helper (--light) haya quedado en el markup de cada builder.
 */

/* ---------------------------------------------------------
   Botones sobre superficies navy
   ---------------------------------------------------------
   Regla de contexto: cualquier botón Gutenberg dentro de una sección navy
   debe mantener contraste en reposo y mostrar un cambio inequívoco al hover.
   Así evitamos el antiguo navy -> navy-hover, que podía fundirse visualmente
   con el propio fondo de la sección.
 */
.ten-section--navy .wp-block-button .wp-block-button__link,
.ten-section--navy .wp-block-button .wp-block-button__link:visited,
.ten-section--navy a.ten-public-buy-button,
.ten-section--navy a.ten-public-buy-button:visited {
    background-color: var(--ten-white) !important;
    border-color: var(--ten-white) !important;
    color: var(--ten-navy) !important;
    text-decoration: none !important;
    box-shadow: none;
    transform: translateY(0);
    transition:
        background-color 160ms ease,
        border-color 160ms ease,
        color 160ms ease,
        box-shadow 160ms ease,
        transform 160ms ease !important;
}

.ten-section--navy .wp-block-button .wp-block-button__link:hover,
.ten-section--navy .wp-block-button .wp-block-button__link:focus-visible,
.ten-section--navy a.ten-public-buy-button:hover,
.ten-section--navy a.ten-public-buy-button:focus-visible {
    background-color: var(--ten-copper) !important;
    border-color: var(--ten-copper) !important;
    color: var(--ten-navy) !important;
    text-decoration: none !important;
    box-shadow: 0 6px 16px rgba(19, 35, 53, 0.18) !important;
    transform: translateY(-1px);
}

/* Los secundarios conservan jerarquía visual propia: contorno en reposo,
   relleno blanco al interactuar. La regla va después de la primaria global. */
.ten-section--navy .wp-block-button.ten-btn--secondary .wp-block-button__link,
.ten-section--navy .wp-block-button.ten-btn--secondary .wp-block-button__link:visited,
.ten-section--navy .wp-block-button.ten-btn--secondary-light .wp-block-button__link,
.ten-section--navy .wp-block-button.ten-btn--secondary-light .wp-block-button__link:visited,
.ten-section--navy .wp-block-button.ten-button--secondary .wp-block-button__link,
.ten-section--navy .wp-block-button.ten-button--secondary .wp-block-button__link:visited {
    background-color: transparent !important;
    border-color: rgba(255, 255, 255, 0.68) !important;
    color: var(--ten-white) !important;
}

.ten-section--navy .wp-block-button.ten-btn--secondary .wp-block-button__link:hover,
.ten-section--navy .wp-block-button.ten-btn--secondary .wp-block-button__link:focus-visible,
.ten-section--navy .wp-block-button.ten-btn--secondary-light .wp-block-button__link:hover,
.ten-section--navy .wp-block-button.ten-btn--secondary-light .wp-block-button__link:focus-visible,
.ten-section--navy .wp-block-button.ten-button--secondary .wp-block-button__link:hover,
.ten-section--navy .wp-block-button.ten-button--secondary .wp-block-button__link:focus-visible {
    background-color: var(--ten-white) !important;
    border-color: var(--ten-white) !important;
    color: var(--ten-navy) !important;
    box-shadow: 0 6px 16px rgba(19, 35, 53, 0.16) !important;
    transform: translateY(-1px);
}

.ten-section--navy .wp-block-button .wp-block-button__link:focus-visible,
.ten-section--navy a.ten-public-buy-button:focus-visible {
    outline: 3px solid rgba(242, 240, 234, 0.92) !important;
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
    .ten-section--navy .wp-block-button .wp-block-button__link,
    .ten-section--navy a.ten-public-buy-button {
        transition: none !important;
        transform: none !important;
    }
}
