/* static/css/speech.css */
.sound-text {
    cursor: pointer;
    color: #0d6efd;
    border-bottom: 1px dashed #0d6efd;
    transition: all 0.3s ease;
    padding: 2px 4px;
    border-radius: 3px;
    background: transparent;
}

.sound-text:hover {
    background: #e3f2fd;
    color: #0a58ca;
    border-bottom-color: #0a58ca;
}

.sound-text.speaking {
    background: #fff3cd;
    color: #856404;
    border-bottom-color: #856404;
    animation: pulse 1s infinite;
}

.sound-text:focus {
    outline: 2px solid #0d6efd;
    outline-offset: 2px;
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(13, 110, 253, 0.4);
    }
    70% {
        box-shadow: 0 0 0 6px rgba(13, 110, 253, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(13, 110, 253, 0);
    }
}

/* Адаптивность для мобильных */
@media (max-width: 768px) {
    .sound-text {
        padding: 4px 6px;
        margin: 2px 0;
    }
}

/* Инструкция для пользователей */
.speech-help {
    background: #f8f9fa;
    border-left: 4px solid #0d6efd;
    padding: 10px 15px;
    margin: 10px 0;
    border-radius: 0 4px 4px 0;
}

.speech-help ul {
    margin-bottom: 0;
}