/**
 * Archivo: assets/css/escuchar.css
 * Módulo: shop-core — reproductor "Escuchar" (.sc-tts-*), sacado tal
 * cual de categoria.css (22/9/2026) para poder cargarlo TAMBIÉN en la
 * ficha pública de producto (Descripción/Fabricación, a petición de
 * Javier) sin tener que encolar categoria.css entero ahí — esa hoja es
 * ~72 KB de estilos del editor que la ficha pública no necesita para
 * nada (mismo motivo por el que ficha-tecnica.css se sacó aparte en su
 * día). Dependencia de categoria.css (editor) Y de producto-single.css
 * (ficha pública) — si se toca un color/tamaño aquí, cambia en los dos
 * sitios a la vez, que es lo que interesa: el mismo reproductor en
 * ambos lados. El JS (assets/js/categoria-tts.js) ya es agnóstico de
 * cuál de los dos lo carga — ver su propio docblock.
 */

/* Tipografía base compartida con el resto de botones del editor
   (categoria.css tiene la lista completa) — aquí solo lo que necesita
   .sc-tts-boton para verse igual también fuera del editor. */
.sc-tts-boton {
    font-family: var(--sc-font-body);
    font-size: clamp(11.20px, calc(7.997px + 0.2345vw), 14px);
    letter-spacing: 0.6px;
    text-transform: uppercase;
    font-weight: 600;
    border-radius: 4px;
    padding: 0.42rem 0.85rem;
    cursor: pointer;
    transition: background 0.2s, color 0.2s, border-color 0.2s;
    background: none;
    border: 1px solid rgba(var(--sc-gold-rgb), 0.4);
    color: var(--sc-gold);
    flex: 0 0 auto;
}
.sc-tts-boton:hover {
    border-color: var(--sc-gold);
    background: rgba(var(--sc-gold-rgb), 0.08);
}

.sc-tts-player {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    max-width: 100%;
}

/* Mientras está sonando, el botón de play/pausa se rellena en dorado
   para que se note claramente que está activo. */
.sc-tts-play-pausa.sc-tts-leyendo {
    background: var(--sc-gold);
    border-color: var(--sc-gold);
    color: var(--sc-bg);
}

/* Línea de progreso: pista fina, relleno dorado hasta la posición
   actual y un "mango" circular arrastrable. Zona pulsable (22px) más
   ancha que la línea visual (6px, pintada con ::before) para no
   "perderla" al mover el ratón un pixel. */
.sc-tts-progreso {
    position: relative;
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 80px;
    max-width: 260px;
    height: 22px;
    cursor: pointer;
    touch-action: none;
    -webkit-user-select: none;
    user-select: none;
}
.sc-tts-progreso::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 6px;
    border-radius: 3px;
    background: rgba(var(--sc-gold-rgb), 0.2);
    transform: translateY(-50%);
    pointer-events: none;
}
.sc-tts-progreso-relleno {
    position: absolute;
    top: 50%;
    left: 0;
    height: 6px;
    width: 0%;
    border-radius: 3px;
    background: var(--sc-gold);
    transform: translateY(-50%);
    pointer-events: none;
}
.sc-tts-progreso-mango {
    position: absolute;
    top: 50%;
    left: 0%;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--sc-gold);
    transform: translate(-50%, -50%);
    pointer-events: none;
    box-shadow: 0 0 0 2px var(--sc-bg);
}
.sc-tts-progreso:hover .sc-tts-progreso-mango,
.sc-tts-progreso:focus-visible .sc-tts-progreso-mango {
    width: 14px;
    height: 14px;
}
.sc-tts-progreso:focus-visible {
    outline: 1px solid var(--sc-gold);
    outline-offset: 2px;
}

.sc-tts-tiempo {
    flex: 0 0 auto;
    font-size: 0.8em;
    color: var(--sc-gold);
    opacity: 0.85;
    min-width: 2.2em;
}
