/*
 * Matrix Pro Suite UI - Packs 1/2/3/4
 * Design global uniforme + AJAX scopes + profil joueur + clans.
 * À charger après rust_theme.css/professional_suite.css.
 */

:root {
  --matrix-bg: #0f151a;
  --matrix-bg-soft: #151c22;
  --matrix-bg-card: rgba(22, 29, 36, 0.88);
  --matrix-bg-card-solid: #161d24;
  --matrix-border: rgba(255, 255, 255, 0.085);
  --matrix-border-strong: rgba(255, 255, 255, 0.14);
  --matrix-text: #f3f6f8;
  --matrix-muted: #9ba7b2;
  --matrix-muted-2: #6e7a86;
  --matrix-blue: #32a7df;
  --matrix-green: #23c16b;
  --matrix-red: #ef4444;
  --matrix-orange: #f97316;
  --matrix-yellow: #f6c343;
  --matrix-purple: #8b5cf6;
  --matrix-shadow: 0 18px 50px rgba(0,0,0,.32);
  --matrix-shadow-soft: 0 10px 28px rgba(0,0,0,.22);
  --matrix-radius: 18px;
  --matrix-radius-sm: 12px;
  --matrix-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

html {
  scroll-behavior: auto !important;
}

body[data-bs-theme="dark"],
body.bg-dark {
  background:
    radial-gradient(circle at 20% 0%, rgba(50,167,223,.12), transparent 34rem),
    radial-gradient(circle at 84% 8%, rgba(249,115,22,.09), transparent 32rem),
    linear-gradient(180deg, #11181f 0%, #0d1217 100%) !important;
  color: var(--matrix-text);
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(180deg, rgba(0,0,0,.58), transparent 78%);
}

/* -------------------------------------------------------------------------- */
/* GLOBAL SHELL                                                               */
/* -------------------------------------------------------------------------- */

.container,
.container-fluid {
  --bs-gutter-x: 1.7rem;
}

.matrix-page-shell,
.matrix-pro-section,
.professional-panel,
.friends-container,
.stat-card,
.card,
.table-responsive,
.list-group,
.modal-content {
  border-color: var(--matrix-border) !important;
}

.matrix-page-shell {
  position: relative;
  border: 1px solid var(--matrix-border);
  border-radius: var(--matrix-radius);
  background: linear-gradient(180deg, rgba(24,31,39,.92), rgba(16,22,29,.94));
  box-shadow: var(--matrix-shadow);
  overflow: hidden;
}

.matrix-page-shell::before,
.professional-panel::before,
.matrix-page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255,255,255,.08), transparent 32%, rgba(50,167,223,.06));
  opacity: .55;
}

.matrix-page-hero {
  position: relative;
  display: flex;
  gap: 1.25rem;
  align-items: center;
  justify-content: space-between;
  margin: 1.25rem 0 1.5rem;
  padding: 1.35rem;
  border: 1px solid var(--matrix-border);
  border-radius: var(--matrix-radius);
  background: linear-gradient(135deg, rgba(25,34,43,.95), rgba(15,21,27,.95));
  box-shadow: var(--matrix-shadow-soft);
  overflow: hidden;
}

.matrix-page-hero > * {
  position: relative;
  z-index: 1;
}

.matrix-page-hero .matrix-hero-kicker {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  color: var(--matrix-blue);
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
  margin-bottom: .35rem;
}

.matrix-page-hero .matrix-hero-title {
  margin: 0;
  font-size: clamp(1.45rem, 3vw, 2.35rem);
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -.04em;
}

.matrix-page-hero .matrix-hero-subtitle {
  margin: .45rem 0 0;
  color: var(--matrix-muted);
  max-width: 64rem;
}

.matrix-hero-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .6rem;
}

.matrix-quick-pill,
.matrix-status-pill,
.badge.matrix-badge {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  min-height: 2rem;
  border: 1px solid var(--matrix-border);
  border-radius: 999px;
  background: rgba(255,255,255,.045);
  color: var(--matrix-text);
  padding: .42rem .72rem;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .01em;
  white-space: nowrap;
}

.matrix-status-pill.is-live {
  border-color: rgba(35,193,107,.25);
  background: rgba(35,193,107,.12);
  color: #8ff0b7;
}

.matrix-status-pill.is-warning {
  border-color: rgba(249,115,22,.25);
  background: rgba(249,115,22,.12);
  color: #ffb783;
}

/* -------------------------------------------------------------------------- */
/* CARDS / STATS                                                              */
/* -------------------------------------------------------------------------- */

.matrix-stat-grid,
.pro-stat-grid,
.leaderboard-summary-grid,
.wipe-summary-grid,
.clan-stat-grid,
.profile-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  margin-bottom: 1.25rem;
}

.matrix-stat-card,
.pro-stat-card,
.wipe-summary-card,
.lb-summary-card,
.clan-stat-card,
.profile-stat-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1rem;
  min-height: 6.1rem;
  padding: 1rem 1.1rem;
  border: 1px solid var(--matrix-border);
  border-radius: var(--matrix-radius-sm);
  background: linear-gradient(135deg, rgba(24,31,39,.94), rgba(14,20,26,.98));
  box-shadow: var(--matrix-shadow-soft);
  overflow: hidden;
}

.matrix-stat-card::after,
.pro-stat-card::after,
.wipe-summary-card::after,
.lb-summary-card::after,
.clan-stat-card::after,
.profile-stat-card::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(50,167,223,.75), transparent);
  opacity: .45;
}

.matrix-stat-icon,
.pro-stat-icon,
.wipe-summary-icon,
.lb-summary-icon,
.clan-stat-icon,
.profile-stat-icon {
  width: 3.55rem;
  height: 3.55rem;
  flex: 0 0 3.55rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 1rem;
  background: rgba(50,167,223,.12);
  color: var(--matrix-blue);
  font-size: 1.55rem;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.04);
}

.matrix-stat-icon.is-red,
.pro-stat-icon.is-red { background: rgba(239,68,68,.12); color: #ff6b6b; }
.matrix-stat-icon.is-green,
.pro-stat-icon.is-green { background: rgba(35,193,107,.12); color: #57e596; }
.matrix-stat-icon.is-orange,
.pro-stat-icon.is-orange { background: rgba(249,115,22,.12); color: #ff9f51; }
.matrix-stat-icon.is-yellow,
.pro-stat-icon.is-yellow { background: rgba(246,195,67,.13); color: #ffd66d; }
.matrix-stat-icon.is-purple,
.pro-stat-icon.is-purple { background: rgba(139,92,246,.14); color: #b69cff; }

.matrix-stat-label,
.pro-stat-label,
.wipe-summary-label,
.lb-summary-label,
.clan-stat-label,
.profile-stat-label {
  display: block;
  margin-bottom: .22rem;
  color: #c8d0d8;
  font-size: .84rem;
  font-weight: 600;
}

.matrix-stat-value,
.pro-stat-value,
.wipe-summary-value,
.lb-summary-value,
.clan-stat-value,
.profile-stat-value {
  display: block;
  color: var(--matrix-text);
  font-size: clamp(1.35rem, 2vw, 1.75rem);
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -.035em;
}

.matrix-stat-note,
.pro-stat-note,
.wipe-summary-note,
.lb-summary-note,
.clan-stat-note,
.profile-stat-note {
  display: block;
  margin-top: .28rem;
  color: var(--matrix-muted);
  font-size: .78rem;
}

/* -------------------------------------------------------------------------- */
/* BUTTONS / FORMS                                                            */
/* -------------------------------------------------------------------------- */

.btn {
  border-radius: .78rem;
  font-weight: 750;
}

.btn-primary,
.btn-success,
.btn-danger,
.btn-warning,
.btn-info {
  box-shadow: 0 10px 22px rgba(0,0,0,.22);
}

.btn-primary {
  background: linear-gradient(135deg, #1b9cd2, #2777c8) !important;
  border-color: rgba(50,167,223,.55) !important;
}

.btn-outline-primary {
  border-color: rgba(50,167,223,.45) !important;
  color: #7ed2ff !important;
}

.btn-outline-primary:hover {
  background: rgba(50,167,223,.15) !important;
}

.form-control,
.form-select,
.input-group-text {
  border-radius: .8rem;
  border-color: var(--matrix-border) !important;
  background-color: rgba(10,15,20,.72) !important;
  color: var(--matrix-text) !important;
}

.form-control::placeholder {
  color: var(--matrix-muted-2) !important;
}

.input-group > .form-control:not(:first-child),
.input-group > .form-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group > .form-control:not(:last-child),
.input-group > .form-select:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.form-control:focus,
.form-select:focus {
  box-shadow: 0 0 0 .2rem rgba(50,167,223,.18) !important;
  border-color: rgba(50,167,223,.65) !important;
}

.matrix-filter-bar,
.pro-filter-bar,
.ban-filter-bar,
.reward-filter-bar,
.clan-filter-bar {
  display: grid;
  grid-template-columns: 1.4fr repeat(3, minmax(10rem, .7fr));
  gap: .8rem;
  align-items: end;
  padding: 1rem;
  border: 1px solid var(--matrix-border);
  border-radius: var(--matrix-radius-sm);
  background: rgba(255,255,255,.035);
  margin-bottom: 1rem;
}

/* -------------------------------------------------------------------------- */
/* TABLES                                                                     */
/* -------------------------------------------------------------------------- */

.matrix-table-shell,
.table-responsive {
  border: 1px solid var(--matrix-border);
  border-radius: var(--matrix-radius-sm);
  background: rgba(12,17,22,.72);
  box-shadow: var(--matrix-shadow-soft);
  overflow: hidden;
}

.table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--matrix-text);
  margin-bottom: 0;
}

.table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  border-bottom-color: rgba(255,255,255,.12) !important;
  background: rgba(12,17,22,.94) !important;
  color: #cad6df !important;
  font-size: .73rem;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.table tbody tr {
  transition: background .18s ease, transform .18s ease;
}

.table tbody tr:hover {
  background: rgba(50,167,223,.055) !important;
}

.table td,
.table th {
  vertical-align: middle;
  border-color: rgba(255,255,255,.065) !important;
}

.matrix-copy-btn,
.copy-steamid-btn,
.copy-admin-steamid-btn,
.copy-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 1.85rem;
  height: 1.85rem;
  padding: 0 !important;
  border: 1px solid rgba(50,167,223,.25) !important;
  border-radius: .55rem !important;
  background: rgba(50,167,223,.08) !important;
  color: #55caff !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: transform .15s ease, background .15s ease, border-color .15s ease;
}

.matrix-copy-btn:hover,
.copy-steamid-btn:hover,
.copy-admin-steamid-btn:hover,
.copy-btn:hover {
  transform: translateY(-1px);
  background: rgba(50,167,223,.18) !important;
  border-color: rgba(50,167,223,.45) !important;
}

.matrix-copy-btn.is-copied,
.copy-steamid-btn.is-copied,
.copy-admin-steamid-btn.is-copied,
.copy-btn.is-copied {
  background: rgba(35,193,107,.16) !important;
  border-color: rgba(35,193,107,.35) !important;
  color: #83f7b0 !important;
}

/* -------------------------------------------------------------------------- */
/* PAGINATION / AJAX                                                          */
/* -------------------------------------------------------------------------- */

.pagination {
  gap: .35rem;
}

.page-link {
  min-width: 2.3rem;
  border-radius: .72rem !important;
  border-color: var(--matrix-border) !important;
  background: rgba(255,255,255,.045) !important;
  color: #cbd7e1 !important;
  font-weight: 800;
  text-align: center;
}

.page-link:hover {
  background: rgba(50,167,223,.13) !important;
  color: #fff !important;
}

.page-item.active .page-link {
  background: linear-gradient(135deg, #1f9ed5, #0e6da6) !important;
  border-color: rgba(50,167,223,.72) !important;
  color: #fff !important;
}

.matrix-ajax-loading {
  position: relative;
  pointer-events: none;
  min-height: 8rem;
}

.matrix-ajax-loading::after {
  content: "Chargement...";
  position: absolute;
  inset: 0;
  z-index: 30;
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(4px);
  background: rgba(6,10,14,.52);
  color: #cdefff;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.matrix-skeleton {
  position: relative;
  overflow: hidden;
  background: rgba(255,255,255,.06);
}

.matrix-skeleton::after {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(-100%);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent);
  animation: matrix-shimmer 1.25s infinite;
}

@keyframes matrix-shimmer {
  100% { transform: translateX(100%); }
}

/* -------------------------------------------------------------------------- */
/* PROFILE PLAYER ADVANCED                                                    */
/* -------------------------------------------------------------------------- */

.profile-header,
.matrix-profile-hero {
  position: relative;
  border-radius: var(--matrix-radius) !important;
  background:
    radial-gradient(circle at top left, rgba(50,167,223,.14), transparent 24rem),
    linear-gradient(135deg, rgba(24,31,39,.98), rgba(11,17,23,.98)) !important;
  border: 1px solid var(--matrix-border) !important;
  box-shadow: var(--matrix-shadow);
  overflow: hidden;
}

.profile-header::after,
.matrix-profile-hero::after {
  content: "";
  position: absolute;
  inset: auto 1rem 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(249,115,22,.8), rgba(50,167,223,.75), transparent);
}

.profile-header h1,
.profile-header h2,
.profile-header h3,
.matrix-profile-name {
  letter-spacing: -.045em;
  font-weight: 950 !important;
}

.profile-stat-value,
.profile-kpi-value,
.matrix-kpi-value {
  font-variant-numeric: tabular-nums;
}

.matrix-player-card {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 1rem;
  align-items: center;
  padding: 1rem;
  border: 1px solid var(--matrix-border);
  border-radius: var(--matrix-radius-sm);
  background: rgba(255,255,255,.035);
}

.matrix-player-avatar,
.player-avatar,
.friends-avatar,
.search-result-avatar {
  border: 2px solid rgba(50,167,223,.45) !important;
  box-shadow: 0 0 0 4px rgba(50,167,223,.06), 0 14px 28px rgba(0,0,0,.28) !important;
}

.matrix-progress,
.progress {
  height: .55rem;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,.075) !important;
}

.matrix-progress-bar,
.progress-bar {
  border-radius: inherit;
  background: linear-gradient(90deg, #ef5b36, #f6c343) !important;
}

/* -------------------------------------------------------------------------- */
/* CLANS PRO                                                                  */
/* -------------------------------------------------------------------------- */

.matrix-clan-page .card,
.clan-card,
.clan-war-card,
.recruitment-card,
.lfc-card {
  position: relative;
  border-radius: var(--matrix-radius-sm) !important;
  background: linear-gradient(135deg, rgba(25,32,40,.92), rgba(14,20,27,.96)) !important;
  border: 1px solid var(--matrix-border) !important;
  box-shadow: var(--matrix-shadow-soft);
  overflow: hidden;
}

.matrix-clan-page .card::before,
.clan-card::before,
.clan-war-card::before,
.recruitment-card::before,
.lfc-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, rgba(50,167,223,.85), rgba(35,193,107,.55), transparent);
  opacity: .7;
}

.clan-tag,
.matrix-clan-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 3.2rem;
  height: 2rem;
  border-radius: .65rem;
  background: rgba(50,167,223,.11);
  color: #8fdbff;
  border: 1px solid rgba(50,167,223,.22);
  font-weight: 950;
  letter-spacing: .06em;
}

.matrix-clan-nav,
.clan-tabs,
.nav-tabs {
  border-bottom-color: var(--matrix-border) !important;
}

.nav-tabs .nav-link {
  border: 0 !important;
  border-bottom: 3px solid transparent !important;
  color: var(--matrix-muted) !important;
  font-weight: 850;
}

.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
  color: var(--matrix-text) !important;
}

.nav-tabs .nav-link.active {
  background: transparent !important;
  color: #7ed2ff !important;
  border-bottom-color: var(--matrix-blue) !important;
}

/* -------------------------------------------------------------------------- */
/* LEFT TAB MENU / SIDEBAR                                                    */
/* -------------------------------------------------------------------------- */

.matrix-side-menu,
.leaderboard-side-menu,
.rf-leaderboard-sidebar .nav,
.side-menu {
  display: flex;
  flex-direction: column;
  gap: .5rem;
}

.matrix-side-menu .nav-link,
.leaderboard-side-menu .nav-link,
.rf-leaderboard-sidebar .nav-link,
.side-menu .nav-link {
  display: flex;
  align-items: center;
  gap: .75rem;
  min-height: 3rem;
  border: 1px solid transparent;
  border-radius: .9rem;
  color: #c8d2dc;
  font-weight: 850;
}

.matrix-side-menu .nav-link:hover,
.leaderboard-side-menu .nav-link:hover,
.rf-leaderboard-sidebar .nav-link:hover,
.side-menu .nav-link:hover {
  background: rgba(255,255,255,.045);
  border-color: var(--matrix-border);
  color: #fff;
}

.matrix-side-menu .nav-link.active,
.leaderboard-side-menu .nav-link.active,
.rf-leaderboard-sidebar .nav-link.active,
.side-menu .nav-link.active {
  background: linear-gradient(135deg, rgba(50,167,223,.18), rgba(249,115,22,.1));
  border-color: rgba(50,167,223,.25);
  color: #fff;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.035);
}

/* -------------------------------------------------------------------------- */
/* EMPTY STATES / ALERTS / MODALS                                             */
/* -------------------------------------------------------------------------- */

.alert {
  border-radius: var(--matrix-radius-sm);
  border-color: var(--matrix-border) !important;
}

.matrix-empty-state,
.no-results,
.empty-state {
  padding: 2.4rem 1rem;
  text-align: center;
  border: 1px dashed var(--matrix-border-strong);
  border-radius: var(--matrix-radius-sm);
  background: rgba(255,255,255,.03);
  color: var(--matrix-muted);
}

.modal-content {
  background: linear-gradient(135deg, rgba(22,29,36,.98), rgba(12,17,22,.99)) !important;
  border-radius: var(--matrix-radius) !important;
  box-shadow: var(--matrix-shadow) !important;
}

.modal-header,
.modal-footer {
  border-color: var(--matrix-border) !important;
}

/* -------------------------------------------------------------------------- */
/* MOBILE                                                                     */
/* -------------------------------------------------------------------------- */

@media (max-width: 1199.98px) {
  .matrix-stat-grid,
  .pro-stat-grid,
  .leaderboard-summary-grid,
  .wipe-summary-grid,
  .clan-stat-grid,
  .profile-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .matrix-filter-bar,
  .pro-filter-bar,
  .ban-filter-bar,
  .reward-filter-bar,
  .clan-filter-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .container,
  .container-fluid {
    --bs-gutter-x: 1rem;
  }

  .matrix-page-hero {
    flex-direction: column;
    align-items: flex-start;
    padding: 1rem;
  }

  .matrix-hero-actions {
    justify-content: flex-start;
    width: 100%;
  }

  .matrix-stat-grid,
  .pro-stat-grid,
  .leaderboard-summary-grid,
  .wipe-summary-grid,
  .clan-stat-grid,
  .profile-stat-grid,
  .matrix-filter-bar,
  .pro-filter-bar,
  .ban-filter-bar,
  .reward-filter-bar,
  .clan-filter-bar {
    grid-template-columns: 1fr;
  }

  .matrix-stat-card,
  .pro-stat-card,
  .wipe-summary-card,
  .lb-summary-card,
  .clan-stat-card,
  .profile-stat-card {
    min-height: 5.25rem;
  }

  .table-responsive {
    border-radius: .85rem;
  }

  .table thead {
    display: none;
  }

  .table tbody tr {
    display: block;
    margin: .75rem;
    border: 1px solid var(--matrix-border);
    border-radius: .9rem;
    background: rgba(255,255,255,.035);
    overflow: hidden;
  }

  .table tbody td {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 1px solid rgba(255,255,255,.055) !important;
  }

  .table tbody td:last-child {
    border-bottom: 0 !important;
  }

  .table tbody td::before {
    content: attr(data-label);
    color: var(--matrix-muted);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: .68rem;
  }
}

/* -------------------------------------------------------------------------- */
/* RF HOTFIX 2026-05-16 - Sidebar Leaderboard anti-overlap                    */
/* Corrige le conflit avec les thèmes qui utilisent déjà .sidebar en fixed.    */
/* -------------------------------------------------------------------------- */
.layout-wrapper {
  display: flex !important;
  align-items: flex-start !important;
  gap: 1.75rem !important;
  width: 100% !important;
  max-width: 100% !important;
  position: relative !important;
  overflow: visible !important;
  clear: both !important;
}

.layout-wrapper > aside.rf-leaderboard-sidebar {
  position: sticky !important;
  top: 1rem !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 2 !important;
  display: block !important;
  flex: 0 0 300px !important;
  width: 300px !important;
  min-width: 300px !important;
  max-width: 300px !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  translate: none !important;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  overflow: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  float: none !important;
  border-radius: 1rem !important;
  background: rgba(17, 24, 31, 0.62) !important;
  box-shadow: none !important;
}

.layout-wrapper > aside.rf-leaderboard-sidebar::before,
.layout-wrapper > aside.rf-leaderboard-sidebar::after {
  display: none !important;
  content: none !important;
}

.layout-wrapper > aside.rf-leaderboard-sidebar .sidebar-section {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
}

.layout-wrapper > aside.rf-leaderboard-sidebar .sidebar-title,
.layout-wrapper > aside.rf-leaderboard-sidebar .rf-sidebar-tab-text,
.layout-wrapper > aside.rf-leaderboard-sidebar .rf-sidebar-tab-text strong,
.layout-wrapper > aside.rf-leaderboard-sidebar .rf-sidebar-tab-text small,
.layout-wrapper > aside.rf-leaderboard-sidebar .list-group-item,
.layout-wrapper > aside.rf-leaderboard-sidebar .server-select-container,
.layout-wrapper > aside.rf-leaderboard-sidebar .connect-section,
.layout-wrapper > aside.rf-leaderboard-sidebar .global-stats-section,
.layout-wrapper > aside.rf-leaderboard-sidebar .battlemetrics-rank-section {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  white-space: normal !important;
  transform: none !important;
}

.layout-wrapper > aside.rf-leaderboard-sidebar .sidebar-banner-section img,
.layout-wrapper > aside.rf-leaderboard-sidebar img {
  max-width: 100% !important;
  height: auto !important;
}

.layout-wrapper > #dynamic-main-content-area,
.layout-wrapper > .tab-content {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: calc(100% - 318px) !important;
  position: relative !important;
  z-index: 1 !important;
  overflow: visible !important;
}

.layout-wrapper > #dynamic-main-content-area .tab-pane {
  width: 100% !important;
  min-width: 0 !important;
}

body .container.content {
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 1199.98px) {
  .layout-wrapper {
    gap: 1.25rem !important;
  }

  .layout-wrapper > aside.rf-leaderboard-sidebar {
    flex-basis: 280px !important;
    width: 280px !important;
    min-width: 280px !important;
    max-width: 280px !important;
  }

  .layout-wrapper > #dynamic-main-content-area,
  .layout-wrapper > .tab-content {
    max-width: calc(100% - 296px) !important;
  }
}

@media (max-width: 991.98px) {
  .layout-wrapper {
    flex-direction: column !important;
    gap: 1rem !important;
  }

  .layout-wrapper > aside.rf-leaderboard-sidebar,
  .layout-wrapper > #dynamic-main-content-area,
  .layout-wrapper > .tab-content {
    position: relative !important;
    top: auto !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

@media (max-width: 575.98px) {
  .layout-wrapper > aside.rf-leaderboard-sidebar {
    border-radius: .85rem !important;
    background: transparent !important;
  }

  .layout-wrapper > aside.rf-leaderboard-sidebar .sidebar-banner-section {
    display: none !important;
  }
}
/* --- EOF RF HOTFIX 2026-05-16 --- */


/* -------------------------------------------------------------------------- */
/* RF HOTFIX 2026-05-16 v2 - Sidebar renommée anti-conflit logo/navbar        */
/* Le composant n'utilise plus la classe générique .sidebar pour éviter les    */
/* thèmes qui la transforment en rail/collapse vertical près du logo.          */
/* -------------------------------------------------------------------------- */
body .layout-wrapper > aside.rf-leaderboard-sidebar {
  position: sticky !important;
  top: 1rem !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 2 !important;
  flex: 0 0 300px !important;
  width: 300px !important;
  min-width: 300px !important;
  max-width: 300px !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  transform: none !important;
  translate: none !important;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  overflow: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  border-radius: 1rem !important;
  background: rgba(17, 24, 31, 0.62) !important;
  box-shadow: none !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar::before,
body .layout-wrapper > aside.rf-leaderboard-sidebar::after {
  display: none !important;
  content: none !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar .sidebar-title,
body .layout-wrapper > aside.rf-leaderboard-sidebar .rf-sidebar-tab-text,
body .layout-wrapper > aside.rf-leaderboard-sidebar .rf-sidebar-tab-text strong,
body .layout-wrapper > aside.rf-leaderboard-sidebar .rf-sidebar-tab-text small,
body .layout-wrapper > aside.rf-leaderboard-sidebar .list-group-item,
body .layout-wrapper > aside.rf-leaderboard-sidebar .server-select-container,
body .layout-wrapper > aside.rf-leaderboard-sidebar .connect-section,
body .layout-wrapper > aside.rf-leaderboard-sidebar .global-stats-section,
body .layout-wrapper > aside.rf-leaderboard-sidebar .battlemetrics-rank-section {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  white-space: normal !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar .sidebar-banner-section img,
body .layout-wrapper > aside.rf-leaderboard-sidebar img {
  max-width: 100% !important;
  height: auto !important;
}

@media (max-width: 1199.98px) {
  body .layout-wrapper > aside.rf-leaderboard-sidebar {
    flex-basis: 280px !important;
    width: 280px !important;
    min-width: 280px !important;
    max-width: 280px !important;
  }
}

@media (max-width: 991.98px) {
  body .layout-wrapper > aside.rf-leaderboard-sidebar {
    position: relative !important;
    top: auto !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}
/* --- EOF RF HOTFIX v2 --- */

/* --------------------------------------------------------------------------
   RF PATCH 2026-05-16: sidebar bounded scroll + leaderboard action button fix
   -------------------------------------------------------------------------- */
@media (min-width: 992px) {
  .layout-wrapper > aside.rf-leaderboard-sidebar {
    max-height: calc(100vh - 1.25rem) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    scrollbar-width: thin;
    scrollbar-color: rgba(249, 115, 22, .55) rgba(255, 255, 255, .06);
  }

  .layout-wrapper > aside.rf-leaderboard-sidebar::-webkit-scrollbar {
    width: 8px;
  }

  .layout-wrapper > aside.rf-leaderboard-sidebar::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, .045);
    border-radius: 999px;
  }

  .layout-wrapper > aside.rf-leaderboard-sidebar::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, rgba(249, 115, 22, .7), rgba(50, 167, 223, .55));
    border-radius: 999px;
  }

  .layout-wrapper > aside.rf-leaderboard-sidebar .global-stats-list {
    max-height: 330px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-right: .35rem !important;
    margin-right: .15rem !important;
    scrollbar-width: thin;
    scrollbar-color: rgba(50, 167, 223, .55) rgba(255, 255, 255, .05);
  }

  .layout-wrapper > aside.rf-leaderboard-sidebar .global-stats-list::-webkit-scrollbar {
    width: 7px;
  }

  .layout-wrapper > aside.rf-leaderboard-sidebar .global-stats-list::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, .04);
    border-radius: 999px;
  }

  .layout-wrapper > aside.rf-leaderboard-sidebar .global-stats-list::-webkit-scrollbar-thumb {
    background: rgba(50, 167, 223, .55);
    border-radius: 999px;
  }

  .layout-wrapper > aside.rf-leaderboard-sidebar .connect-section {
    padding-bottom: 1rem !important;
  }
}

.leaderboard-table-wrapper {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: thin;
  scrollbar-color: rgba(249, 115, 22, .55) rgba(255, 255, 255, .06);
}

.leaderboard-table-wrapper::-webkit-scrollbar {
  height: 9px;
}

.leaderboard-table-wrapper::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, .045);
  border-radius: 999px;
}

.leaderboard-table-wrapper::-webkit-scrollbar-thumb {
  background: linear-gradient(90deg, rgba(249, 115, 22, .7), rgba(50, 167, 223, .55));
  border-radius: 999px;
}

.leaderboard-table {
  min-width: 1240px !important;
}

.leaderboard-table th.col-actions,
.leaderboard-table td.col-actions {
  width: 118px !important;
  min-width: 118px !important;
  max-width: 118px !important;
  white-space: nowrap !important;
}

@media (min-width: 992px) {
  .leaderboard-table th.col-actions,
  .leaderboard-table td.col-actions {
    position: sticky !important;
    right: 0 !important;
    z-index: 4 !important;
    background: rgba(15, 20, 26, .98) !important;
    box-shadow: -12px 0 18px rgba(0, 0, 0, .24) !important;
  }

  .leaderboard-table thead th.col-actions {
    z-index: 6 !important;
    background: rgba(9, 12, 16, .98) !important;
  }

  .leaderboard-table tbody tr:nth-child(odd) td.col-actions {
    background: rgba(20, 26, 32, .98) !important;
  }

  .leaderboard-table tbody tr:nth-child(even) td.col-actions {
    background: rgba(31, 38, 45, .98) !important;
  }

  .leaderboard-table tbody tr:hover td.col-actions {
    background: rgba(34, 43, 51, .98) !important;
  }
}

.leaderboard-action-btn,
.btn-view-profile,
.banned-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .35rem !important;
  min-width: 94px !important;
  max-width: 106px !important;
  padding: .38rem .62rem !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.1 !important;
}

@media (max-width: 1399.98px) and (min-width: 768px) {
  .leaderboard-action-btn span,
  .btn-view-profile span,
  .banned-button span {
    display: none !important;
  }

  .leaderboard-action-btn,
  .btn-view-profile,
  .banned-button {
    min-width: 42px !important;
    max-width: 46px !important;
    width: 42px !important;
    padding-left: .45rem !important;
    padding-right: .45rem !important;
  }
}

@media (max-width: 767.98px) {
  .leaderboard-table {
    min-width: 0 !important;
  }

  .leaderboard-table th.col-actions,
  .leaderboard-table td.col-actions {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    position: static !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .leaderboard-action-btn,
  .btn-view-profile,
  .banned-button {
    min-width: 104px !important;
    max-width: none !important;
    width: auto !important;
  }
}
/* EOF RF PATCH 2026-05-16 */

/* --------------------------------------------------------------------------
   RF FINAL HOTFIX 2026-05-16 - Leaderboard table / sidebar stable layout
   Corrige le débordement du tableau, la colonne Actions et le bouton Profil.
-------------------------------------------------------------------------- */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

body .layout-wrapper {
  display: flex !important;
  align-items: flex-start !important;
  gap: 1.45rem !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar {
  flex: 0 0 300px !important;
  width: 300px !important;
  min-width: 300px !important;
  max-width: 300px !important;
  max-height: calc(100vh - 2rem) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  scrollbar-width: thin;
  scrollbar-color: rgba(50, 167, 223, .55) rgba(255, 255, 255, .06);
}

body .layout-wrapper > aside.rf-leaderboard-sidebar::-webkit-scrollbar {
  width: 7px;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, .045);
  border-radius: 999px;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar::-webkit-scrollbar-thumb {
  background: rgba(50, 167, 223, .55);
  border-radius: 999px;
}

body .layout-wrapper > #dynamic-main-content-area,
body .layout-wrapper > .tab-content {
  flex: 1 1 calc(100% - 322px) !important;
  width: calc(100% - 322px) !important;
  min-width: 0 !important;
  max-width: calc(100% - 322px) !important;
  overflow: hidden !important;
}

body .layout-wrapper > #dynamic-main-content-area .tab-pane,
body .layout-wrapper .main-content {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

body .leaderboard-table-wrapper {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  border-radius: 16px !important;
}

body .leaderboard-table {
  width: 100% !important;
  min-width: 1088px !important;
  max-width: none !important;
  table-layout: fixed !important;
  margin-bottom: 0 !important;
}

body .leaderboard-table th,
body .leaderboard-table td {
  box-sizing: border-box !important;
  vertical-align: middle !important;
}

body .leaderboard-table th.col-rank,
body .leaderboard-table td.col-rank { width: 72px !important; min-width: 72px !important; max-width: 72px !important; }
body .leaderboard-table th.col-clan,
body .leaderboard-table td.col-clan { width: 64px !important; min-width: 64px !important; max-width: 64px !important; }
body .leaderboard-table th.col-player,
body .leaderboard-table td.col-player { width: 255px !important; min-width: 255px !important; max-width: 255px !important; }
body .leaderboard-table th.col-kills,
body .leaderboard-table td.col-kills { width: 92px !important; min-width: 92px !important; max-width: 92px !important; }
body .leaderboard-table th.col-deaths,
body .leaderboard-table td.col-deaths { width: 82px !important; min-width: 82px !important; max-width: 82px !important; }
body .leaderboard-table th.col-kdr,
body .leaderboard-table td.col-kdr { width: 72px !important; min-width: 72px !important; max-width: 72px !important; }
body .leaderboard-table th.col-accuracy,
body .leaderboard-table td.col-accuracy { width: 104px !important; min-width: 104px !important; max-width: 104px !important; }
body .leaderboard-table th.col-hs,
body .leaderboard-table td.col-hs { width: 94px !important; min-width: 94px !important; max-width: 94px !important; }
body .leaderboard-table th.col-challenges,
body .leaderboard-table td.col-challenges { width: 78px !important; min-width: 78px !important; max-width: 78px !important; }
body .leaderboard-table th.col-playtime,
body .leaderboard-table td.col-playtime { width: 112px !important; min-width: 112px !important; max-width: 112px !important; }
body .leaderboard-table th.col-actions,
body .leaderboard-table td.col-actions {
  position: static !important;
  right: auto !important;
  z-index: auto !important;
  width: 92px !important;
  min-width: 92px !important;
  max-width: 92px !important;
  background: inherit !important;
  box-shadow: none !important;
  white-space: nowrap !important;
}

body .leaderboard-table thead th.col-actions,
body .leaderboard-table tbody tr:nth-child(odd) td.col-actions,
body .leaderboard-table tbody tr:nth-child(even) td.col-actions,
body .leaderboard-table tbody tr:hover td.col-actions {
  position: static !important;
  right: auto !important;
  background: inherit !important;
  box-shadow: none !important;
}

body .player-name-sm {
  max-width: 150px !important;
}

body .player-steamid-meta {
  max-width: 160px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body .leaderboard-progress-stat {
  min-width: 58px !important;
}

body .mini-progress {
  width: 58px !important;
}

body .leaderboard-playtime-pill,
body .leaderboard-challenge-pill {
  max-width: 100% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  padding-left: .42rem !important;
  padding-right: .42rem !important;
}

body .leaderboard-action-btn,
body .btn-view-profile,
body .banned-button {
  min-width: 72px !important;
  width: 72px !important;
  max-width: 72px !important;
  height: 32px !important;
  padding: .32rem .45rem !important;
  border-radius: 999px !important;
  font-size: .72rem !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .25rem !important;
  overflow: hidden !important;
}

body .leaderboard-action-btn .leaderboard-action-label,
body .btn-view-profile .leaderboard-action-label,
body .banned-button .leaderboard-action-label {
  display: inline-block !important;
  max-width: 42px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

@media (max-width: 1499.98px) and (min-width: 768px) {
  body .leaderboard-table { min-width: 1012px !important; }
  body .leaderboard-table th.col-player,
  body .leaderboard-table td.col-player { width: 218px !important; min-width: 218px !important; max-width: 218px !important; }
  body .leaderboard-table th.col-playtime,
  body .leaderboard-table td.col-playtime { width: 96px !important; min-width: 96px !important; max-width: 96px !important; }
  body .player-name-sm { max-width: 122px !important; }
  body .player-steamid-meta { max-width: 132px !important; }
  body .mini-progress { width: 48px !important; }
  body .leaderboard-progress-stat { min-width: 48px !important; }
  body .leaderboard-action-btn,
  body .btn-view-profile,
  body .banned-button { min-width: 38px !important; width: 38px !important; max-width: 38px !important; }
  body .leaderboard-action-btn .leaderboard-action-label,
  body .btn-view-profile .leaderboard-action-label,
  body .banned-button .leaderboard-action-label { display: none !important; }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  body .layout-wrapper > aside.rf-leaderboard-sidebar {
    flex-basis: 270px !important;
    width: 270px !important;
    min-width: 270px !important;
    max-width: 270px !important;
  }

  body .layout-wrapper > #dynamic-main-content-area,
  body .layout-wrapper > .tab-content {
    flex-basis: calc(100% - 292px) !important;
    width: calc(100% - 292px) !important;
    max-width: calc(100% - 292px) !important;
  }
}

@media (max-width: 991.98px) {
  body .layout-wrapper {
    overflow: visible !important;
  }

  body .layout-wrapper > aside.rf-leaderboard-sidebar,
  body .layout-wrapper > #dynamic-main-content-area,
  body .layout-wrapper > .tab-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
  }

  body .layout-wrapper > aside.rf-leaderboard-sidebar {
    position: relative !important;
    top: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }
}
/* EOF RF FINAL HOTFIX 2026-05-16 */


/* --------------------------------------------------------------------------
   RF FINAL FIX 2026-05-16 — no internal sidebar scroll, clean profile button,
   desktop leaderboard without broken horizontal scroll.
   -------------------------------------------------------------------------- */
html,
body {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

body .layout-wrapper,
body .leaderboard-layout,
body .rf-leaderboard-layout {
  overflow: visible !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar {
  position: relative !important;
  top: auto !important;
  align-self: flex-start !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  scrollbar-width: auto !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar .global-stats-list,
body .layout-wrapper > aside.rf-leaderboard-sidebar .sidebar-section,
body .layout-wrapper > aside.rf-leaderboard-sidebar .global-stats-section,
body .layout-wrapper > aside.rf-leaderboard-sidebar .connect-section,
body .layout-wrapper > aside.rf-leaderboard-sidebar .battlemetrics-rank-section {
  max-height: none !important;
  overflow: visible !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar::-webkit-scrollbar,
body .layout-wrapper > aside.rf-leaderboard-sidebar .global-stats-list::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
}

body .layout-wrapper > #dynamic-main-content-area,
body .layout-wrapper > .tab-content,
body .layout-wrapper .main-content,
body #leaderboard-tab-pane,
body #history-tab-pane {
  min-width: 0 !important;
  overflow: visible !important;
}

body .leaderboard-table-wrapper {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  overflow-y: visible !important;
  border-radius: 16px !important;
}

body .leaderboard-table {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  table-layout: fixed !important;
}

body .leaderboard-table th,
body .leaderboard-table td {
  padding-left: .55rem !important;
  padding-right: .55rem !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body .leaderboard-table th.col-rank,
body .leaderboard-table td.col-rank { width: 58px !important; min-width: 58px !important; max-width: 58px !important; }
body .leaderboard-table th.col-clan,
body .leaderboard-table td.col-clan { width: 48px !important; min-width: 48px !important; max-width: 48px !important; }
body .leaderboard-table th.col-player,
body .leaderboard-table td.col-player { width: 220px !important; min-width: 220px !important; max-width: 220px !important; }
body .leaderboard-table th.col-kills,
body .leaderboard-table td.col-kills { width: 82px !important; min-width: 82px !important; max-width: 82px !important; }
body .leaderboard-table th.col-deaths,
body .leaderboard-table td.col-deaths { width: 72px !important; min-width: 72px !important; max-width: 72px !important; }
body .leaderboard-table th.col-kdr,
body .leaderboard-table td.col-kdr { width: 62px !important; min-width: 62px !important; max-width: 62px !important; }
body .leaderboard-table th.col-accuracy,
body .leaderboard-table td.col-accuracy { width: 96px !important; min-width: 96px !important; max-width: 96px !important; }
body .leaderboard-table th.col-hs,
body .leaderboard-table td.col-hs { width: 84px !important; min-width: 84px !important; max-width: 84px !important; }
body .leaderboard-table th.col-challenges,
body .leaderboard-table td.col-challenges { width: 70px !important; min-width: 70px !important; max-width: 70px !important; }
body .leaderboard-table th.col-playtime,
body .leaderboard-table td.col-playtime { width: 100px !important; min-width: 100px !important; max-width: 100px !important; }
body .leaderboard-table th.col-actions,
body .leaderboard-table td.col-actions {
  position: static !important;
  right: auto !important;
  z-index: auto !important;
  width: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  padding-left: .35rem !important;
  padding-right: .35rem !important;
  background: inherit !important;
  box-shadow: none !important;
  text-align: center !important;
}

body .leaderboard-table thead th.col-actions,
body .leaderboard-table tbody tr:nth-child(odd) td.col-actions,
body .leaderboard-table tbody tr:nth-child(even) td.col-actions,
body .leaderboard-table tbody tr:hover td.col-actions {
  position: static !important;
  right: auto !important;
  background: inherit !important;
  box-shadow: none !important;
}

body .player-name-sm { max-width: 122px !important; }
body .player-steamid-meta { max-width: 135px !important; }
body .mini-progress { width: 44px !important; }
body .leaderboard-progress-stat { min-width: 44px !important; }

body .leaderboard-action-btn,
body .btn-view-profile,
body .banned-button {
  min-width: 34px !important;
  width: 34px !important;
  max-width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

body .leaderboard-action-btn i,
body .btn-view-profile i,
body .banned-button i {
  margin: 0 !important;
  font-size: .82rem !important;
  line-height: 1 !important;
}

body .leaderboard-action-btn .leaderboard-action-label,
body .btn-view-profile .leaderboard-action-label,
body .banned-button .leaderboard-action-label,
body .leaderboard-action-btn span:not(.visually-hidden),
body .btn-view-profile span:not(.visually-hidden),
body .banned-button span:not(.visually-hidden) {
  display: none !important;
}

@media (max-width: 1199.98px) {
  body .leaderboard-table-wrapper {
    overflow-x: auto !important;
    overflow-y: visible !important;
    -webkit-overflow-scrolling: touch !important;
  }
  body .leaderboard-table { min-width: 960px !important; max-width: none !important; }
}

@media (max-width: 991.98px) {
  body .layout-wrapper > aside.rf-leaderboard-sidebar {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}
/* EOF RF FINAL FIX 2026-05-16 */

/* --------------------------------------------------------------------------
   RF PATCH 2026-05-16 — sidebar contour restored + action button color sync
   -------------------------------------------------------------------------- */
body .layout-wrapper > aside.rf-leaderboard-sidebar {
  background:
    linear-gradient(180deg, rgba(17, 25, 34, .98) 0%, rgba(9, 15, 22, .98) 100%) !important;
  border: 1px solid rgba(255, 255, 255, .10) !important;
  border-right: 1px solid rgba(56, 189, 248, .20) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .045),
    0 18px 42px rgba(0, 0, 0, .32) !important;
  border-radius: 0 18px 18px 0 !important;
  padding: 1rem .95rem !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar .sidebar-section {
  border-color: rgba(255, 255, 255, .12) !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar .sidebar-title {
  margin: 0 0 .65rem !important;
  padding: .8rem 1rem .65rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, .13) !important;
  color: rgba(241, 245, 249, .96) !important;
  letter-spacing: .07em !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar .rf-sidebar-tabs {
  gap: .75rem !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar .rf-sidebar-tabs .nav-link {
  background: linear-gradient(135deg, rgba(17, 24, 32, .98), rgba(12, 18, 25, .98)) !important;
  border: 1px solid rgba(255, 255, 255, .10) !important;
  border-radius: 14px !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .04),
    0 10px 24px rgba(0, 0, 0, .18) !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar .rf-sidebar-tabs .nav-link:hover {
  border-color: rgba(56, 189, 248, .28) !important;
  background: linear-gradient(135deg, rgba(18, 29, 39, .98), rgba(12, 21, 30, .98)) !important;
  transform: translateY(-1px) !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar .rf-sidebar-tabs .nav-link.active {
  background: linear-gradient(135deg, rgba(63, 38, 22, .95), rgba(28, 20, 16, .98)) !important;
  border-color: rgba(230, 126, 34, .70) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .05),
    0 0 0 1px rgba(230, 126, 34, .13),
    0 16px 30px rgba(230, 126, 34, .10) !important;
}

body .layout-wrapper > aside.rf-leaderboard-sidebar .rf-sidebar-tab-icon {
  border: 1px solid rgba(255, 255, 255, .08) !important;
  background: rgba(0, 0, 0, .22) !important;
}

body .leaderboard-table th.col-actions,
body .leaderboard-table td.col-actions {
  --rf-action-column-bg: #111820;
  background-color: var(--rf-action-column-bg) !important;
  background-image: none !important;
}

body .leaderboard-table tbody tr:hover td.col-actions {
  background-color: #131e28 !important;
}

body .leaderboard-table td.col-actions .btn-view-profile,
body .leaderboard-table td.col-actions .leaderboard-action-btn.btn-view-profile,
body .btn-view-profile.leaderboard-action-btn {
  background-color: var(--rf-action-column-bg, #111820) !important;
  background-image: none !important;
  border: 1px solid rgba(255, 255, 255, .10) !important;
  color: #38bdf8 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035) !important;
}

body .leaderboard-table td.col-actions .btn-view-profile:hover,
body .leaderboard-table td.col-actions .leaderboard-action-btn.btn-view-profile:hover,
body .btn-view-profile.leaderboard-action-btn:hover {
  background-color: #172433 !important;
  border-color: rgba(56, 189, 248, .38) !important;
  color: #e0f2fe !important;
}

body .leaderboard-table td.col-actions .btn-view-profile:focus,
body .leaderboard-table td.col-actions .leaderboard-action-btn.btn-view-profile:focus,
body .btn-view-profile.leaderboard-action-btn:focus {
  box-shadow: 0 0 0 .2rem rgba(56, 189, 248, .16) !important;
}
/* EOF RF PATCH 2026-05-16 */





/* --------------------------------------------------------------------------
   RF FINAL PATCH 2026-05-16 — Actions column same row colors as the table.
   The actions cell must visually match player/kills/etc columns.
-------------------------------------------------------------------------- */
body .leaderboard-table th.col-actions,
body .leaderboard-table td.col-actions {
  background: inherit !important;
  background-color: inherit !important;
  background-image: none !important;
  color: inherit !important;
  border-left: 1px solid rgba(255,255,255,.05) !important;
  box-shadow: none !important;
}

body .leaderboard-table thead th.col-actions,
body .leaderboard-table tbody tr:nth-child(odd) td.col-actions,
body .leaderboard-table tbody tr:nth-child(even) td.col-actions,
body .leaderboard-table tbody tr:hover td.col-actions {
  background: inherit !important;
  background-color: inherit !important;
  background-image: none !important;
  box-shadow: none !important;
}

body .leaderboard-table td.col-actions {
  text-align: center !important;
}

body .leaderboard-table td.col-actions .btn-view-profile,
body .leaderboard-table td.col-actions .leaderboard-action-btn.btn-view-profile,
body .btn-view-profile.leaderboard-action-btn {
  min-width: 34px !important;
  width: 34px !important;
  max-width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255, 255, 255, 0.045) !important;
  border: 1px solid rgba(255, 255, 255, 0.09) !important;
  color: #d7dee6 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03) !important;
  backdrop-filter: none !important;
}

body .leaderboard-table td.col-actions .btn-view-profile i,
body .leaderboard-table td.col-actions .leaderboard-action-btn.btn-view-profile i,
body .btn-view-profile.leaderboard-action-btn i {
  color: #d7dee6 !important;
  font-size: .84rem !important;
}

body .leaderboard-table td.col-actions .btn-view-profile:hover,
body .leaderboard-table td.col-actions .leaderboard-action-btn.btn-view-profile:hover,
body .btn-view-profile.leaderboard-action-btn:hover {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.14) !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

body .leaderboard-table td.col-actions .btn-view-profile:hover i,
body .leaderboard-table td.col-actions .leaderboard-action-btn.btn-view-profile:hover i,
body .btn-view-profile.leaderboard-action-btn:hover i {
  color: #ffffff !important;
}
/* EOF RF FINAL PATCH 2026-05-16 */






/* --------------------------------------------------------------------------
   RF PATCH 2026-05-16 — Remove unwanted Matrix Pro Suite hero card.
   Keeps the site logo/header clean if an older JS cache still injects it.
-------------------------------------------------------------------------- */
body .matrix-page-hero {
  display: none !important;
}

body header .matrix-page-hero,
body #app > header .matrix-page-hero,
body .navbar .matrix-page-hero,
body .site-header .matrix-page-hero {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}
/* EOF RF PATCH 2026-05-16 */






/* --------------------------------------------------------------------------
   RF SAFE HEADER / NATIVE JS FIX 2026-05-16
   Objectif : laisser le header/dropdowns au JavaScript natif du site/Bootstrap.
   Aucune règle ici ne force display:none sur les dropdowns.
-------------------------------------------------------------------------- */
body .matrix-page-hero,
body header .matrix-page-hero,
body #app > header .matrix-page-hero,
body .navbar .matrix-page-hero,
body .site-header .matrix-page-hero {
  display: none !important;
}

body header,
body #app > header,
body .site-header,
body .main-header,
body .navbar {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  transform: none !important;
  overflow: visible !important;
  position: relative;
  z-index: 1030;
}

body header .navbar-brand,
body header .navbar-brand img,
body .navbar .navbar-brand,
body .navbar .navbar-brand img,
body header .site-logo,
body header .site-logo img,
body header .logo,
body header .logo img {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  transform: none !important;
  max-height: 58px;
}

body header .navbar-nav,
body .navbar .navbar-nav,
body header nav ul {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  transform: none !important;
  flex-direction: row !important;
  align-items: center !important;
}

body header .nav-link,
body .navbar .nav-link,
body header nav a {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  transform: none !important;
  white-space: nowrap;
}

/* On ne touche plus au display des dropdowns : Bootstrap / ton JS d'origine gère show/hide. */
body header .dropdown-menu,
body .navbar .dropdown-menu,
body .site-header .dropdown-menu,
body .main-header .dropdown-menu {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  transform-origin: top right;
  max-width: min(92vw, 28rem);
  max-height: 70vh;
  overflow-x: hidden;
  overflow-y: auto;
}

body header .dropdown-menu *,
body .navbar .dropdown-menu * {
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
}

/* Colonne Actions : même fond que la ligne, bouton profil gris/noir discret. */
body .leaderboard-table th.col-actions,
body .leaderboard-table td.col-actions,
body .leaderboard-table thead th.col-actions,
body .leaderboard-table tbody tr:nth-child(odd) td.col-actions,
body .leaderboard-table tbody tr:nth-child(even) td.col-actions,
body .leaderboard-table tbody tr:hover td.col-actions {
  background: inherit !important;
  background-color: inherit !important;
  background-image: none !important;
  box-shadow: none !important;
}

body .leaderboard-table td.col-actions {
  text-align: center !important;
}

body .leaderboard-table td.col-actions .btn.btn-info.btn-view-profile.leaderboard-action-btn,
body .leaderboard-table td.col-actions .btn-view-profile,
body .btn.btn-info.btn-view-profile,
body .btn-view-profile.leaderboard-action-btn {
  --bs-btn-color: #cbd5df !important;
  --bs-btn-bg: rgba(255,255,255,.045) !important;
  --bs-btn-border-color: rgba(203,213,223,.16) !important;
  --bs-btn-hover-color: #fff !important;
  --bs-btn-hover-bg: rgba(255,255,255,.075) !important;
  --bs-btn-hover-border-color: rgba(255,255,255,.22) !important;
  min-width: 34px !important;
  width: 34px !important;
  max-width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255,255,255,.045) !important;
  background-image: none !important;
  border: 1px solid rgba(203,213,223,.16) !important;
  color: #cbd5df !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03) !important;
  text-shadow: none !important;
}

body .leaderboard-table td.col-actions .btn.btn-info.btn-view-profile.leaderboard-action-btn i,
body .leaderboard-table td.col-actions .btn-view-profile i,
body .btn.btn-info.btn-view-profile i,
body .btn-view-profile.leaderboard-action-btn i,
body .leaderboard-table td.col-actions .fa-eye {
  color: #cbd5df !important;
  text-shadow: none !important;
  filter: none !important;
}

body .leaderboard-table td.col-actions .btn.btn-info.btn-view-profile.leaderboard-action-btn:hover,
body .leaderboard-table td.col-actions .btn-view-profile:hover,
body .btn.btn-info.btn-view-profile:hover,
body .btn-view-profile.leaderboard-action-btn:hover {
  background: rgba(255,255,255,.075) !important;
  border-color: rgba(255,255,255,.22) !important;
  color: #ffffff !important;
}
/* EOF RF SAFE HEADER / NATIVE JS FIX 2026-05-16 */


/* --------------------------------------------------------------------------
   RF REWARD CARD FIX 2026-05-16 — avoid floating badges / empty cards.
-------------------------------------------------------------------------- */
body .rf-reward-grid .reward-shell {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
}
body .rf-reward-grid .reward-shell > .reward-card,
body .rf-reward-grid .reward-shell > .rf-fallback-card,
body .rf-reward-grid .reward-shell > [class*="col-"] > .reward-card {
  width: 100% !important;
  min-height: 326px !important;
  flex: 1 1 auto !important;
}
body .rf-reward-grid .rf-card-topline {
  pointer-events: none !important;
  max-width: calc(100% - 1.5rem) !important;
}
body .rf-reward-grid .rf-template-claim-fallback {
  position: relative !important;
  z-index: 5 !important;
}
/* EOF RF REWARD CARD FIX 2026-05-16 */

/* RF Reward Top 1 visibility fix */
.player-name-winner-blue,
.reward-card .player-name-winner-blue,
.rf-fallback-preview .player-name-winner-blue {
  color: #00BFFF !important;
  font-weight: 900 !important;
  text-shadow: 0 0 10px rgba(0,191,255,.55), 0 0 22px rgba(0,191,255,.28) !important;
}
.reward-shell[data-reward-key="top_1_winner_ever"] {
  min-height: 100% !important;
}
.reward-shell[data-reward-key="top_1_winner_ever"] .rf-card-topline {
  opacity: 1 !important;
  visibility: visible !important;
}


/* --------------------------------------------------------------------------
   RF PATCH 2026-05-16 — Leaderboard action button integrated in row + Reward admin reset.
   - Bouton Profil sans fond bleu ni pastille sombre différente.
   - Colonne Actions hérite exactement du fond de la ligne.
   - Boutons admin reward visibles et propres pour refaire les tests.
-------------------------------------------------------------------------- */
body .leaderboard-table th.col-actions,
body .leaderboard-table td.col-actions,
body .leaderboard-table thead th.col-actions,
body .leaderboard-table tbody tr:nth-child(odd) td.col-actions,
body .leaderboard-table tbody tr:nth-child(even) td.col-actions,
body .leaderboard-table tbody tr:hover td.col-actions {
  background: inherit !important;
  background-color: inherit !important;
  background-image: none !important;
  box-shadow: none !important;
}

body .leaderboard-table td.col-actions {
  text-align: center !important;
}

body .leaderboard-table td.col-actions a.btn,
body .leaderboard-table td.col-actions button.btn,
body .leaderboard-table td.col-actions .btn-view-profile,
body .leaderboard-table td.col-actions .leaderboard-action-btn,
body .leaderboard-table td.col-actions .leaderboard-action-btn.btn-view-profile,
body .btn-view-profile.leaderboard-action-btn,
body a.btn.btn-info.btn-view-profile,
body button.btn.btn-info.btn-view-profile {
  width: 34px !important;
  min-width: 34px !important;
  max-width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 1px solid rgba(148, 163, 184, .16) !important;
  color: #aeb7c2 !important;
  box-shadow: none !important;
  outline: none !important;
}

body .leaderboard-table td.col-actions a.btn i,
body .leaderboard-table td.col-actions button.btn i,
body .leaderboard-table td.col-actions .btn-view-profile i,
body .leaderboard-table td.col-actions .leaderboard-action-btn i,
body a.btn.btn-info.btn-view-profile i,
body button.btn.btn-info.btn-view-profile i {
  color: #aeb7c2 !important;
  font-size: .86rem !important;
  margin: 0 !important;
  line-height: 1 !important;
}

body .leaderboard-table td.col-actions a.btn:hover,
body .leaderboard-table td.col-actions button.btn:hover,
body .leaderboard-table td.col-actions .btn-view-profile:hover,
body .leaderboard-table td.col-actions .leaderboard-action-btn:hover,
body a.btn.btn-info.btn-view-profile:hover,
body button.btn.btn-info.btn-view-profile:hover {
  background: rgba(255, 255, 255, .055) !important;
  background-color: rgba(255, 255, 255, .055) !important;
  border-color: rgba(148, 163, 184, .24) !important;
  color: #f1f5f9 !important;
  transform: none !important;
}

body .leaderboard-table td.col-actions a.btn:hover i,
body .leaderboard-table td.col-actions button.btn:hover i,
body .leaderboard-table td.col-actions .btn-view-profile:hover i,
body .leaderboard-table td.col-actions .leaderboard-action-btn:hover i,
body a.btn.btn-info.btn-view-profile:hover i,
body button.btn.btn-info.btn-view-profile:hover i {
  color: #f1f5f9 !important;
}

body .leaderboard-table td.col-actions .leaderboard-action-label,
body .leaderboard-table td.col-actions .btn-view-profile span:not(.visually-hidden),
body .leaderboard-table td.col-actions .leaderboard-action-btn span:not(.visually-hidden) {
  display: none !important;
}

.rf-admin-remove-reward,
.rf-template-claim-fallback {
  padding: 0 1.25rem 1.25rem !important;
}

.rf-admin-remove-reward .btn,
.reward-card .remove-reward-btn,
.reset-test-rewards-btn {
  border-radius: 14px !important;
  font-weight: 850 !important;
  letter-spacing: .035em !important;
}

.reset-test-rewards-btn {
  white-space: nowrap !important;
}
/* EOF RF PATCH 2026-05-16 */


/* --------------------------------------------------------------------------
   RF FINAL TABLE FIX 2026-05-16 — Clan visible, Actions visible, profile button
   fully integrated in the same grey row color, and no delayed reward colors.
-------------------------------------------------------------------------- */
:root {
  --rf-lb-row-odd-fixed: #2b3035;
  --rf-lb-row-even-fixed: #0f141a;
  --rf-lb-row-hover-fixed: #333a41;
  --rf-lb-head-fixed: #090e14;
}

body .leaderboard-table {
  min-width: 1180px !important;
  table-layout: fixed !important;
}

body .leaderboard-table th.col-clan,
body .leaderboard-table td.col-clan {
  width: 92px !important;
  min-width: 92px !important;
  max-width: 92px !important;
  text-align: center !important;
  overflow: visible !important;
}

body .leaderboard-table th.col-clan span,
body .leaderboard-table td.col-clan span {
  overflow: visible !important;
  text-overflow: clip !important;
}

body .leaderboard-table th.col-actions,
body .leaderboard-table td.col-actions {
  width: 96px !important;
  min-width: 96px !important;
  max-width: 96px !important;
  text-align: center !important;
  overflow: visible !important;
}

body .leaderboard-table thead th,
body .leaderboard-table.table-dark thead th,
body .leaderboard-table.table-striped thead th {
  --bs-table-bg: var(--rf-lb-head-fixed) !important;
  --bs-table-accent-bg: var(--rf-lb-head-fixed) !important;
  background: var(--rf-lb-head-fixed) !important;
  background-color: var(--rf-lb-head-fixed) !important;
  background-image: none !important;
}

body .leaderboard-table.table-dark.table-striped > tbody > tr:nth-of-type(odd) > *,
body .leaderboard-table.table-dark > tbody > tr:nth-of-type(odd) > *,
body .leaderboard-table > tbody > tr:nth-of-type(odd) > td,
body .leaderboard-table > tbody > tr:nth-of-type(odd) > th {
  --bs-table-bg: var(--rf-lb-row-odd-fixed) !important;
  --bs-table-accent-bg: var(--rf-lb-row-odd-fixed) !important;
  background: var(--rf-lb-row-odd-fixed) !important;
  background-color: var(--rf-lb-row-odd-fixed) !important;
  background-image: none !important;
  box-shadow: none !important;
}

body .leaderboard-table.table-dark.table-striped > tbody > tr:nth-of-type(even) > *,
body .leaderboard-table.table-dark > tbody > tr:nth-of-type(even) > *,
body .leaderboard-table > tbody > tr:nth-of-type(even) > td,
body .leaderboard-table > tbody > tr:nth-of-type(even) > th {
  --bs-table-bg: var(--rf-lb-row-even-fixed) !important;
  --bs-table-accent-bg: var(--rf-lb-row-even-fixed) !important;
  background: var(--rf-lb-row-even-fixed) !important;
  background-color: var(--rf-lb-row-even-fixed) !important;
  background-image: none !important;
  box-shadow: none !important;
}

body .leaderboard-table.table-hover > tbody > tr:hover > *,
body .leaderboard-table > tbody > tr:hover > td,
body .leaderboard-table > tbody > tr:hover > th {
  --bs-table-bg: var(--rf-lb-row-hover-fixed) !important;
  --bs-table-accent-bg: var(--rf-lb-row-hover-fixed) !important;
  background: var(--rf-lb-row-hover-fixed) !important;
  background-color: var(--rf-lb-row-hover-fixed) !important;
  background-image: none !important;
}

body .leaderboard-table td.col-actions,
body .leaderboard-table th.col-actions,
body .leaderboard-table tbody tr:nth-child(odd) td.col-actions,
body .leaderboard-table tbody tr:nth-child(even) td.col-actions,
body .leaderboard-table tbody tr:hover td.col-actions {
  box-shadow: none !important;
  border-left: 1px solid rgba(255,255,255,.045) !important;
}

body .leaderboard-table td.col-actions a.btn,
body .leaderboard-table td.col-actions button.btn,
body .leaderboard-table td.col-actions .btn-view-profile,
body .leaderboard-table td.col-actions .leaderboard-action-btn,
body .leaderboard-table td.col-actions .leaderboard-action-btn.btn-view-profile,
body .btn-view-profile.leaderboard-action-btn,
body button.btn-view-profile,
body a.btn-view-profile {
  width: 34px !important;
  min-width: 34px !important;
  max-width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  margin: 0 auto !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  color: #cbd5df !important;
  box-shadow: none !important;
  outline: 0 !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

body .leaderboard-table td.col-actions .btn-view-profile i,
body .leaderboard-table td.col-actions .leaderboard-action-btn i,
body .leaderboard-table td.col-actions .fa-eye,
body button.btn-view-profile i,
body a.btn-view-profile i {
  color: #cbd5df !important;
  font-size: .9rem !important;
  margin: 0 !important;
  line-height: 1 !important;
}

body .leaderboard-table td.col-actions .btn-view-profile:hover,
body .leaderboard-table td.col-actions .leaderboard-action-btn:hover,
body button.btn-view-profile:hover,
body a.btn-view-profile:hover {
  background: rgba(255,255,255,.07) !important;
  background-color: rgba(255,255,255,.07) !important;
  border: 0 !important;
  color: #ffffff !important;
  transform: none !important;
}

body .leaderboard-table td.col-actions .btn-view-profile:hover i,
body .leaderboard-table td.col-actions .leaderboard-action-btn:hover i,
body button.btn-view-profile:hover i,
body a.btn-view-profile:hover i {
  color: #ffffff !important;
}

body .leaderboard-table td.col-actions .leaderboard-action-label,
body .leaderboard-table td.col-actions .btn-view-profile span:not(.visually-hidden),
body .leaderboard-table td.col-actions .leaderboard-action-btn span:not(.visually-hidden) {
  display: none !important;
}

body .leaderboard-clan-badge {
  display: inline-flex !important;
  max-width: 78px !important;
  padding: .28rem .5rem !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  justify-content: center !important;
}
/* EOF RF FINAL TABLE FIX 2026-05-16 */


/* --------------------------------------------------------------------------
   RF SAFE FIX 2026-05-16 — Header JS native + player profile modal clean.
   This patch avoids internal profile scrollbars and prevents Matrix styles from
   touching Bootstrap/header dropdown behavior.
-------------------------------------------------------------------------- */
body header,
body #app > header,
body .site-header,
body .main-header,
body .navbar {
  overflow: visible !important;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
}

body header .dropdown-menu:not(.show),
body .navbar .dropdown-menu:not(.show),
body .site-header .dropdown-menu:not(.show),
body .main-header .dropdown-menu:not(.show) {
  display: none;
}

body header .dropdown-menu.show,
body .navbar .dropdown-menu.show,
body .site-header .dropdown-menu.show,
body .main-header .dropdown-menu.show {
  display: block;
  width: auto !important;
  height: auto !important;
  min-width: 12rem !important;
  max-width: min(92vw, 28rem) !important;
  overflow: visible !important;
}

#playerProfileModal .modal-dialog {
  width: min(1180px, calc(100vw - 2rem)) !important;
  max-width: min(1180px, calc(100vw - 2rem)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

#playerProfileModal .modal-content {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

#playerProfileModal .modal-body,
#playerProfileModalBody {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  overflow-y: visible !important;
}

#playerProfileModalBody > .container,
#playerProfileModalBody .container,
#playerProfileModalBody .container-fluid,
#playerProfileModalBody .profile-content,
#playerProfileModalBody .profile-tab-content,
#playerProfileModalBody .tab-content,
#playerProfileModalBody .tab-pane {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow-x: hidden !important;
  box-sizing: border-box !important;
}

#playerProfileModalBody .row {
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

#playerProfileModalBody [class*="col-"] {
  min-width: 0 !important;
}

#playerProfileModalBody .profile-header,
#playerProfileModalBody .matrix-profile-hero,
#playerProfileModalBody .profile-banner-container {
  max-width: 100% !important;
  overflow: hidden !important;
}

#playerProfileModalBody model-viewer,
#playerProfileModalBody canvas,
#playerProfileModalBody img,
#playerProfileModalBody table {
  max-width: 100% !important;
}

#profileContentPlaceholder {
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
}

body.matrix-page-profile .container.content,
body.matrix-profile-page .container.content {
  max-width: 1320px !important;
  overflow: visible !important;
}
/* EOF RF SAFE FIX 2026-05-16 */
