.pred-control-bar {
      position: sticky;
      top: 64px; 
      z-index: 90;
      background: rgba(10,10,18,0.92);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      border-bottom: 1px solid rgba(212,175,55,0.15);
      box-shadow: 0 4px 24px rgba(0,0,0,0.35);
      margin-bottom: 24px;
    }

    
    .pred-sport-tabs {
      display: flex;
      align-items: center;
      gap: 0;
      padding: 0 16px;
      border-bottom: 1px solid rgba(255,255,255,0.06);
      overflow-x: auto;
      scrollbar-width: none;
    }
    .pred-sport-tabs::-webkit-scrollbar { display: none; }

    .pred-sport-tab {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      padding: 14px 20px;
      font-size: 0.82rem;
      font-weight: 700;
      font-family: 'Montserrat', sans-serif;
      color: rgba(255,255,255,0.45);
      background: transparent;
      border: none;
      border-bottom: 2px solid transparent;
      cursor: pointer;
      transition: all 0.2s;
      white-space: nowrap;
      letter-spacing: 0.03em;
      text-transform: uppercase;
    }
    .pred-sport-tab:hover {
      color: rgba(255,255,255,0.75);
      background: rgba(255,255,255,0.03);
    }
    .pred-sport-tab.active {
      color: #D4AF37;
      border-bottom-color: #D4AF37;
      background: rgba(212,175,55,0.06);
    }
    .pred-sport-tab .tab-emoji { font-size: 1.1rem; }
    .pred-sport-tab .tab-count {
      background: rgba(212,175,55,0.2);
      color: #D4AF37;
      font-size: 0.65rem;
      font-weight: 800;
      padding: 2px 6px;
      border-radius: 100px;
      min-width: 18px;
      text-align: center;
      display: none; 
    }
    .pred-sport-tab.active .tab-count { display: inline-block; }

    
    .pred-action-bar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 10px 16px;
      gap: 12px;
      flex-wrap: wrap;
    }

    
    .pred-date-group {
      display: flex;
      align-items: center;
      gap: 4px;
      background: rgba(255,255,255,0.04);
      border: 1px solid rgba(255,255,255,0.08);
      border-radius: 10px;
      padding: 4px;
    }
    .pred-date-btn {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      padding: 7px 14px;
      border-radius: 7px;
      font-size: 0.76rem;
      font-weight: 700;
      font-family: 'Montserrat', sans-serif;
      color: rgba(255,255,255,0.5);
      background: transparent;
      border: none;
      cursor: pointer;
      transition: all 0.18s;
      white-space: nowrap;
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }
    .pred-date-btn:hover {
      color: rgba(255,255,255,0.8);
      background: rgba(255,255,255,0.06);
    }
    .pred-date-btn.active {
      background: linear-gradient(135deg, rgba(212,175,55,0.22), rgba(212,175,55,0.1));
      color: #D4AF37;
      box-shadow: 0 0 0 1px rgba(212,175,55,0.35);
    }

    
    .pred-quick-search-wrap {
      position: relative;
      display: flex;
      align-items: center;
    }
    .pred-quick-search {
      background: rgba(255,255,255,0.06);
      border: 1px solid rgba(255,255,255,0.12);
      border-radius: 8px;
      color: rgba(255,255,255,0.85);
      font-size: 0.76rem;
      font-family: 'Montserrat', sans-serif;
      padding: 7px 32px 7px 30px;
      outline: none;
      width: 180px;
      transition: all 0.2s;
    }
    .pred-quick-search:focus {
      border-color: rgba(59,130,246,0.6);
      background: rgba(37,99,235,0.08);
      width: 220px;
    }
    .pred-quick-search::placeholder { color: rgba(255,255,255,0.3); }
    .pred-quick-search-icon {
      position: absolute;
      left: 8px;
      font-size: 0.8rem;
      pointer-events: none;
      color: rgba(255,255,255,0.35);
    }
    .pred-quick-search-clear {
      position: absolute;
      right: 6px;
      background: none;
      border: none;
      color: rgba(255,255,255,0.35);
      font-size: 0.9rem;
      cursor: pointer;
      padding: 2px 4px;
      display: none;
      line-height: 1;
    }
    .pred-quick-search-clear:hover { color: #fff; }
    @media (max-width: 640px) {
      .pred-quick-search { width: 120px; }
      .pred-quick-search:focus { width: 150px; }
    }

    
    .pred-cart-btn {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 7px 12px;
      border-radius: 8px;
      font-size: 0.76rem;
      font-weight: 700;
      font-family: 'Montserrat', sans-serif;
      background: rgba(37,99,235,0.12);
      border: 1px solid rgba(59,130,246,0.35);
      color: #60a5fa;
      cursor: pointer;
      transition: all 0.2s;
      white-space: nowrap;
      position: relative;
    }
    .pred-cart-btn:hover {
      background: rgba(59,130,246,0.22);
      border-color: rgba(96,165,250,0.6);
      color: #93c5fd;
    }
    .pred-cart-btn.active {
      background: rgba(37,99,235,0.3);
      border-color: #3b82f6;
      color: #fff;
      box-shadow: 0 0 12px rgba(59,130,246,0.4);
    }
    .pred-cart-count {
      background: #3b82f6;
      color: #fff;
      border-radius: 10px;
      padding: 1px 6px;
      font-size: 0.68rem;
      font-weight: 800;
      min-width: 18px;
      text-align: center;
    }
    @media (max-width: 640px) {
      .pred-cart-btn span.cart-label { display: none; }
    }

    
    #pred-cart-view {
      display: none;
    }
    #pred-cart-view.active {
      display: block;
    }

    
    .pred-controls-right {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-left: auto;
    }

    
    .pred-sound-btn {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 7px 14px;
      border-radius: 8px;
      font-size: 0.76rem;
      font-weight: 700;
      font-family: 'Montserrat', sans-serif;
      background: rgba(255,255,255,0.05);
      border: 1px solid rgba(255,255,255,0.1);
      color: rgba(255,255,255,0.5);
      cursor: pointer;
      transition: all 0.2s;
      white-space: nowrap;
    }
    .pred-sound-btn:hover {
      border-color: rgba(212,175,55,0.4);
      color: #D4AF37;
      background: rgba(212,175,55,0.07);
    }
    .pred-sound-btn.sound-on {
      border-color: rgba(212,175,55,0.5);
      color: #D4AF37;
      background: rgba(212,175,55,0.1);
    }
    .pred-sound-btn .sound-icon { font-size: 1rem; }

    
    .pred-match-badge {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      padding: 7px 12px;
      border-radius: 8px;
      font-size: 0.74rem;
      font-weight: 700;
      font-family: 'Montserrat', sans-serif;
      background: rgba(255,255,255,0.04);
      border: 1px solid rgba(255,255,255,0.07);
      color: rgba(255,255,255,0.4);
      white-space: nowrap;
    }
    .pred-match-badge .badge-num {
      color: #D4AF37;
      font-size: 0.9rem;
    }

    
    @media (max-width: 640px) {
      .pred-sport-tab { padding: 12px 14px; font-size: 0.75rem; }
      .pred-action-bar { padding: 8px 12px; gap: 8px; }
      .pred-date-btn { padding: 6px 10px; font-size: 0.7rem; }
      .pred-sound-btn span.sound-label { display: none; }
      .pred-match-badge span.badge-label { display: none; }
    }

    
    .pred-filters { display: none !important; }

    
    .pred-focus-clear-btn {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 7px 12px;
      border-radius: 8px;
      font-size: 0.76rem;
      font-weight: 700;
      font-family: 'Montserrat', sans-serif;
      background: rgba(37,99,235,0.12);
      border: 1px solid rgba(59,130,246,0.4);
      color: #60a5fa;
      cursor: pointer;
      transition: all 0.2s;
      white-space: nowrap;
    }
    .pred-focus-clear-btn:hover {
      background: rgba(59,130,246,0.2);
      border-color: rgba(96,165,250,0.6);
      color: #93c5fd;
    }
    .pred-focus-clear-btn .focus-count {
      background: #3b82f6;
      color: #fff;
      border-radius: 10px;
      padding: 1px 6px;
      font-size: 0.68rem;
      font-weight: 800;
      min-width: 18px;
      text-align: center;
    }
    .pred-focus-clear-btn .focus-clear-icon { font-size: 0.9rem; }
    @media (max-width: 640px) {
      .pred-focus-clear-btn .focus-clear-label { display: none; }
    }

    
    .pred-hidden-btn {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 7px 12px;
      border-radius: 8px;
      font-size: 0.76rem;
      font-weight: 700;
      font-family: 'Montserrat', sans-serif;
      background: rgba(255,255,255,0.05);
      border: 1px solid rgba(255,255,255,0.1);
      color: rgba(255,255,255,0.5);
      cursor: pointer;
      transition: all 0.2s;
      white-space: nowrap;
    }
    .pred-hidden-btn:hover {
      border-color: rgba(212,175,55,0.4);
      color: #D4AF37;
      background: rgba(212,175,55,0.07);
    }
    .pred-hidden-btn.active {
      border-color: rgba(212,175,55,0.5);
      color: #D4AF37;
      background: rgba(212,175,55,0.1);
    }
    .pred-hidden-count {
      background: #D4AF37;
      color: #111;
      border-radius: 10px;
      padding: 1px 6px;
      font-size: 0.68rem;
      font-weight: 800;
      min-width: 18px;
      text-align: center;
    }
    
    .pred-dismiss-btn {
      position: absolute;
      bottom: 8px;
      right: 40px;
      left: auto;
      top: auto;
      width: 26px;
      height: 26px;
      border-radius: 50%;
      background: rgba(220,38,38,0.85);
      border: 1.5px solid rgba(255,100,100,0.5);
      color: #fff;
      font-size: 0.85rem;
      font-weight: 900;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      line-height: 1;
      transition: all 0.15s;
      z-index: 20;
      padding: 0;
      box-shadow: 0 2px 8px rgba(0,0,0,0.4);
    }
    .pred-dismiss-btn:hover {
      background: rgba(239,68,68,1);
      border-color: #ff6b6b;
      transform: scale(1.15);
      box-shadow: 0 4px 12px rgba(239,68,68,0.5);
    }
    
    .hidden-match-row {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 8px 12px;
      background: rgba(255,255,255,0.04);
      border: 1px solid rgba(255,255,255,0.07);
      border-radius: 8px;
      font-size: 0.78rem;
      color: rgba(255,255,255,0.6);
    }
    .hidden-match-row .hmr-teams {
      flex: 1;
      font-weight: 600;
      color: rgba(255,255,255,0.8);
    }
    .hidden-match-row .hmr-league {
      font-size: 0.68rem;
      color: rgba(255,255,255,0.35);
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }
    .hidden-match-row .hmr-restore {
      background: rgba(212,175,55,0.1);
      border: 1px solid rgba(212,175,55,0.3);
      border-radius: 6px;
      padding: 4px 10px;
      font-size: 0.7rem;
      font-weight: 700;
      color: #D4AF37;
      cursor: pointer;
      transition: all 0.15s;
      white-space: nowrap;
    }
    .hidden-match-row .hmr-restore:hover {
      background: rgba(212,175,55,0.2);
    }
    @media (max-width: 640px) {
      .pred-hidden-btn .hidden-btn-label { display: none; }
    }

    
    .pred-cards-list {
      display: flex;
      flex-direction: column;
      gap: 14px;
    }
  

#goal-sound-popup {
  display:none;
  position:fixed;
  bottom:24px;
  right:24px;
  z-index:9999;
  background:linear-gradient(135deg,#1a1a2e,#16213e);
  border:1px solid rgba(255,215,0,0.35);
  border-radius:16px;
  padding:18px 22px;
  max-width:320px;
  box-shadow:0 8px 32px rgba(0,0,0,0.6);
  animation:slideUpPopup 0.4s ease;
}

    @keyframes slideUpPopup {
      from { transform:translateY(20px); opacity:0; }
      to   { transform:translateY(0);   opacity:1; }
    }
    #goal-sound-popup .popup-title {
      font-size:0.95rem;
      font-weight:700;
      color:#FFD700;
      margin-bottom:6px;
      display:flex;
      align-items:center;
      gap:8px;
    }
    #goal-sound-popup .popup-desc {
      font-size:0.8rem;
      color:#aaa;
      margin-bottom:14px;
      line-height:1.5;
    }
    #goal-sound-popup .popup-btns {
      display:flex;
      gap:10px;
    }
    #goal-sound-popup .btn-allow {
      flex:1;
      background:#FFD700;
      color:#111;
      border:none;
      border-radius:8px;
      padding:9px 0;
      font-size:0.82rem;
      font-weight:700;
      cursor:pointer;
      transition:opacity 0.2s;
    }
    #goal-sound-popup .btn-allow:hover { opacity:0.85; }
    #goal-sound-popup .btn-deny {
      flex:1;
      background:transparent;
      color:#888;
      border:1px solid #444;
      border-radius:8px;
      padding:9px 0;
      font-size:0.82rem;
      cursor:pointer;
      transition:border-color 0.2s;
    }
    #goal-sound-popup .btn-deny:hover { border-color:#888; }
    
    
    #goal-sound-toggle { display:none !important; }
