(function($){
  'use strict';

  // Tabs click
  $(document).on('click', '.fsp-tab', function(e){
    e.preventDefault();
    var $hub = $(this).closest('.fsp-hub');
    var id = $(this).data('panel');

    $hub.find('.fsp-tab').removeClass('active');
    $(this).addClass('active');

    $hub.find('.fsp-panel').removeClass('active');
    $hub.find('#'+id).addClass('active');

    if(history.pushState){ history.pushState(null,'','#'+id); }
  });

  // Dropdown change (mobile)
  $(document).on('change', '.fsp-hub-select', function(){
    var $hub = $(this).closest('.fsp-hub');
    var val = $(this).val();
    var $tab = $hub.find('.fsp-tab[data-panel="'+val+'"]');
    if($tab.length){ $tab.trigger('click'); }
  });

  // Single-audio behavior (stop other players)
  $(document).on('play', 'audio', function(){
    $('audio').not(this).each(function(){ this.pause(); });
  });

  // Hash deep-link on load
  $(function(){
    var h = window.location.hash.replace('#','');
    if(!h) return;
    var $tab = $('.fsp-hub .fsp-tab[data-panel="'+h+'"]');
    if($tab.length){ $tab.trigger('click'); }
  });

})(jQuery);