  /* Page-specific: fight rows, filter tabs, search, VS layout */
  .fight-row { transition: background-color 0.25s ease; }
  .fight-row:hover { background-color: rgba(26,28,20,0.04); }
  .filter-tab { transition: background-color 0.25s ease, color 0.25s ease; cursor: pointer; }
  .filter-tab:hover { background-color: #dedad4; color: #1a1c20; }
  .filter-tab.active { background-color: #1a1c20; color: #f7f5f2; }
  .filter-tab.active:hover { background-color: #1a1c20; color: #f7f5f2; }
  .event-search { transition: background-color 0.25s ease, box-shadow 0.25s ease; }
  .event-search:focus { background-color: rgba(255,255,255,0.12); box-shadow: 0 0 0 2px rgba(187, 21, 44, 0.3); outline: none; }
  .past-row { transition: background-color 0.25s ease; }
  .past-row:hover { background-color: rgba(26,28,20,0.04); }
  .pagination-btn { transition: background-color 0.2s ease, color 0.2s ease; }
  .pagination-btn:disabled { opacity: 0.3; cursor: default; }
  .live-pulse { animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; }
  @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
  @media (max-width: 639px) {
    .fight-vs-layout { flex-direction: column; }
    .fight-vs-layout .fighter-side { justify-content: center !important; flex: none; }
    .fight-vs-layout .fighter-side-a { flex-direction: row !important; }
    .fight-vs-layout .fighter-side-a .fighter-info { text-align: center; order: 0 !important; }
    .fight-vs-layout .fighter-side-a .fighter-avatar { order: -1 !important; }
    .fight-vs-layout .fighter-side-b .fighter-info { text-align: center; }
    .fight-vs-layout .vs-divider { margin: 0.5rem 0; }
  }

  /* Calendar: tighter on mobile */
  @media (max-width: 639px) {
    #cal-grid { gap: 2px; }
    .cal-day { padding: 4px 2px !important; min-height: 60px; }
    .cal-day-num { font-size: 0.6875rem; }
    .cal-event-dot { font-size: 0.4375rem !important; padding: 1px 3px !important; }
  }
  @media (max-width: 400px) {
    .cal-day { min-height: 50px; }
    .cal-event-dot { display: block; width: 6px; height: 6px; border-radius: 50%; padding: 0 !important; overflow: hidden; text-indent: -9999px; }
  }

  /* Sort buttons wrap on mobile */
  @media (max-width: 479px) {
    .fighters-toolbar {
      flex-direction: column !important;
      align-items: flex-start !important;
    }
    .sort-controls {
      width: 100%;
      overflow-x: auto;
      -ms-overflow-style: none;
      scrollbar-width: none;
    }
    .sort-controls::-webkit-scrollbar { display: none; }
  }
