/* Shared bar + footer for every page (FOX eSport Modern Minimal Theme) */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,600;0,700;0,800;0,900;1,700;1,900&family=Barlow:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Bebas+Neue&family=Space+Grotesk:wght@600;700&display=swap');

:root {
  --fx-bg: #09090b;
  --fx-panel: #111115;
  --fx-card: #15151b;
  --fx-border: rgba(255, 255, 255, 0.08);
  --fx-border-fox: rgba(255, 121, 0, 0.35);
  --fx-orange: #ff7900;
  --fx-orange-glow: rgba(255, 121, 0, 0.45);
  --fx-orange-light: #ffaa33;
  --fx-text: #f5f5f7;
  --fx-muted: #8e8e98;
}

html {
  background: var(--fx-bg);
  color-scheme: dark;
  overflow-x: clip;
}

/* GLOBAL CONTINUOUS FIXED CYBER GRID (SEAMLESS ACROSS ALL PAGES) */
body, body.fx-fragment {
  margin: 0;
  background-color: #080b10 !important;
  color: var(--fx-text);
  font-family: 'Barlow', system-ui, sans-serif;
  min-height: 100vh;
  position: relative;
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}

body::before {
  content: '' !important;
  position: fixed !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background-image:
    linear-gradient(rgba(255, 122, 0, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 122, 0, 0.035) 1px, transparent 1px) !important;
  background-size: 60px 60px !important;
  pointer-events: none !important;
  z-index: 0 !important;
  opacity: 1 !important;
  display: block !important;
  contain: strict;
}

/* GPU SCROLL & COMPOSITING ACCELERATION */
.card, .fox-player-card, .team-card, .staff-card, .trophy-card, .sponsor-card {
  contain: layout style paint;
}

/* Ensure all content sits cleanly above the global background grid */
#fx-bar, .hero, .page-hero, .teams-hero, .fx-hero, .wrap, .teams-wrapper, #fx-foot, main, section, header {
  position: relative;
  z-index: 1;
}

/* Disable rogue nested orbs and duplicate boxed overlays */
.hero-grid-overlay,
.hero-bg-orb,
.hero-grid,
.hero-bg,
[class*="orb-"] {
  display: none !important;
}

/* NAVBAR */
#fx-bar, #fx-foot {
  font-family: 'Inter', system-ui, sans-serif;
  box-sizing: border-box;
}

#fx-bar *, #fx-foot * {
  box-sizing: border-box;
}

#fx-bar {
  position: sticky;
  top: 0;
  z-index: 9999;
  background: rgba(9, 9, 11, 0.88);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
}

#fx-bar .fx-in, #fx-foot .fx-in {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

#fx-bar .fx-in {
  height: 68px;
}

#fx-bar .fx-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 700;
  font-size: 21px;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.5px;
  transition: transform 0.2s ease;
}

#fx-bar .fx-logo img {
  height: 32px;
  width: auto;
  display: block;
}

#fx-bar .fx-logo span {
  color: var(--fx-orange);
}

#fx-bar .fx-links {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: wrap;
}

#fx-bar .fx-links a {
  font-size: 14px;
  font-weight: 600;
  color: var(--fx-muted);
  text-decoration: none;
  padding: 8px 14px;
  border-radius: 8px;
  transition: all 0.2s ease;
}

#fx-bar .fx-links a:hover {
  color: #fff;
  background: rgba(255, 121, 0, 0.1);
}

#fx-bar .fx-links a.fx-on {
  color: var(--fx-orange);
  background: rgba(255, 121, 0, 0.12);
  border: 1px solid rgba(255, 121, 0, 0.25);
}

#fx-bar #fx-tg {
  display: none;
}

#fx-bar .fx-burger {
  display: none;
  cursor: pointer;
  padding: 8px;
}

#fx-bar .fx-burger span {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--fx-text);
  margin: 6px 0;
  border-radius: 2px;
  transition: 0.2s;
}

@media (max-width: 900px) {
  #fx-bar .fx-burger {
    display: block;
  }
  #fx-bar .fx-links {
    display: none;
    position: absolute;
    top: 68px;
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: stretch;
    background: #0d0d12;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    padding: 16px 20px 24px;
    gap: 8px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.8);
  }
  #fx-bar #fx-tg:checked ~ .fx-links {
    display: flex;
  }
  #fx-bar .fx-links a {
    padding: 12px 16px;
    font-size: 15px;
  }
}

/* Custom modern scrollbar */
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: #09090b;
}
::-webkit-scrollbar-thumb {
  background: rgba(255, 121, 0, 0.4);
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--fx-orange);
}


/* ── CANONICAL ROSTER & CREATOR CARDS (ALWAYS VISIBLE OVERLAY) ── */
.fox-card-info {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  padding: 24px 10px 10px !important;
  background: linear-gradient(0deg, rgba(8, 11, 16, 0.98) 0%, rgba(8, 11, 16, 0.75) 60%, transparent 100%) !important;
  pointer-events: none !important;
  text-align: center !important;
  z-index: 5 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.fox-card-tag {
  display: inline-block !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: #ff7a00 !important;
  background: rgba(255, 122, 0, 0.15) !important;
  border: 1px solid rgba(255, 122, 0, 0.3) !important;
  border-radius: 4px !important;
  padding: 2px 7px !important;
  margin-bottom: 4px !important;
  pointer-events: auto !important;
}

.fox-card-name {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 1.35rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  line-height: 1.1 !important;
  pointer-events: auto !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.9) !important;
}

.card:hover .fox-card-name,
.fox-player-card:hover .fox-card-name {
  color: #ff7a00 !important;
}

/* ── GLOBAL FORM SELECT & DROPDOWN FIX ── */
select {
  color-scheme: dark !important;
  background-color: #0e1420 !important;
  color: #ffffff !important;
  cursor: pointer !important;
}

select option {
  color-scheme: dark !important;
  background-color: #0e1420 !important;
  color: #ffffff !important;
  padding: 12px 14px !important;
  font-size: 0.95rem !important;
}

select option:disabled {
  color: #717d96 !important;
  background-color: #080b10 !important;
}

select option:checked,
select option:hover {
  background-color: #ff7a00 !important;
  color: #000000 !important;
}

/* ─── CANONICAL GLOBAL FOOTER (STANDARDIZED & EQUAL EVERYWHERE) ─── */
#fx-foot {
  position: relative !important;
  z-index: 10 !important;
  background: #06080c !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  color: #8e9bb0 !important;
  font-size: 13.5px !important;
  padding: 44px 0 52px !important;
  margin-top: 100px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  clear: both !important;
}

#fx-foot .fx-in {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 22px !important;
  text-align: center !important;
}

.fx-foot-brand {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 1.4rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  color: #ffffff !important;
}

.fx-foot-brand img {
  height: 28px !important;
  width: auto !important;
  object-fit: contain !important;
}

.fx-foot-top {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  flex-wrap: wrap !important;
  gap: 20px !important;
  padding-bottom: 22px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important; /* SINGLE DIVIDER LINE */
}

.fx-foot-bottom {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  width: 100% !important;
  padding-top: 4px !important;
  border-top: none !important; /* NO DOUBLE LINE! */
  color: #717d96 !important;
  font-size: 13px !important;
}

.fx-foot-bottom a {
  color: var(--fx-orange, #ff7a00) !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
}

.fx-foot-bottom a:hover {
  color: #ff9d3b !important;
  text-decoration: underline !important;
}

.fx-socials {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
}

.fx-soc-btn {
  width: 38px !important;
  height: 38px !important;
  border-radius: 9px !important;
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #cbd5e1 !important;
  text-decoration: none !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
  flex-shrink: 0 !important;
}

.fx-soc-btn svg {
  width: 18px !important;
  height: 18px !important;
  display: block !important;
  fill: currentColor !important;
  flex-shrink: 0 !important;
}

.fx-soc-btn:hover {
  transform: translateY(-2px) !important;
  color: #ffffff !important;
}

.fx-soc-btn.tw:hover { border-color: #9146ff !important; background: rgba(145, 70, 255, 0.15) !important; color: #9146ff !important; }
.fx-soc-btn.yt:hover { border-color: #ff0000 !important; background: rgba(255, 0, 0, 0.15) !important; color: #ff0000 !important; }
.fx-soc-btn.ig:hover { border-color: #e4405f !important; background: rgba(228, 64, 95, 0.15) !important; color: #e4405f !important; }
.fx-soc-btn.tk:hover { border-color: #00f2fe !important; background: rgba(0, 242, 254, 0.15) !important; color: #ffffff !important; }
.fx-soc-btn.x:hover  { border-color: #ffffff !important; background: rgba(255, 255, 255, 0.15) !important; color: #ffffff !important; }
.fx-soc-btn.dc:hover { border-color: #5865F2 !important; background: rgba(88, 101, 242, 0.15) !important; color: #5865F2 !important; }
.fx-soc-btn.tg:hover { border-color: #26A5E4 !important; background: rgba(38, 165, 228, 0.15) !important; color: #26A5E4 !important; }

.fx-admin-trigger {
  display: none !important;
}

/* ─── UNIFIED HERO COMPONENT (FULL WIDTH, CLEAN AMBIENT GLOW OVER GLOBAL GRID) ─── */
.hero,
.page-hero,
.teams-hero,
.fx-hero {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 44vh !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  overflow: hidden !important;
  padding: 5.5rem 1.5rem 4rem !important;
  text-align: center !important;
  background: radial-gradient(ellipse 70% 50% at 50% 25%, rgba(255,122,0,0.12) 0%, transparent 75%) !important;
  box-sizing: border-box !important;
}

/* No duplicate second grid on hero pseudo-elements */
.hero::before,
.page-hero::before,
.teams-hero::before,
.fx-hero::before,
.hero::after,
.page-hero::after,
.teams-hero::after,
.fx-hero::after {
  display: none !important;
}

.hero-content,
.hero-inner,
.hero > div:not(.hero-bg):not(.hero-grid) {
  position: relative;
  z-index: 2 !important;
  max-width: 900px;
  margin: 0 auto;
}

.fx-hero-tag,
.hero .tag,
.hero-tag {
  display: inline-block !important;
  font-family: 'Barlow', sans-serif !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.25em !important;
  text-transform: uppercase !important;
  color: #ff7a00 !important;
  border: 1px solid rgba(255, 122, 0, 0.45) !important;
  background: rgba(255, 122, 0, 0.08) !important;
  padding: 0.45rem 1.4rem !important;
  margin-bottom: 1.8rem !important;
  border-radius: 4px !important;
  box-shadow: 0 0 15px rgba(255, 122, 0, 0.12) !important;
}

.hero h1,
.hero-title,
.teams-hero h1 {
  font-family: 'Barlow Condensed', 'Bebas Neue', sans-serif !important;
  font-size: clamp(4.2rem, 11vw, 8rem) !important;
  font-weight: 900 !important;
  line-height: 0.88 !important;
  color: #ffffff !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
  margin: 0 0 1rem !important;
  text-shadow: 0 4px 20px rgba(0, 0, 0, 0.8) !important;
}

.hero h1 span,
.hero-title span,
.teams-hero h1 span,
.hero-title .accent,
.hero h1 .accent {
  color: #ff7a00 !important;
  display: inline-block !important;
}

.hero-subtitle,
.hero-sub,
.hero p,
.teams-hero p {
  font-family: 'Barlow', sans-serif !important;
  font-size: 1.05rem !important;
  font-weight: 400 !important;
  color: #8e9bb0 !important;
  max-width: 600px !important;
  margin: 1.2rem auto 0 !important;
  line-height: 1.65 !important;
}

/* Eliminate any 'Scorri' scroll hint anywhere */
.scroll-hint,
.hero-scroll,
[class*="scroll-hint"],
[class*="hero-scroll"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}


/* ==========================================================================
   FOX eSport — UNSLOP HIGH-CRAFT DESIGN SYSTEM REFINEMENTS
   Removes AI clichés, restores deliberate contrast, typographic hierarchy,
   and bespoke athletic esports polish across all devices.
   ========================================================================== */

/* 1. Global High-Contrast Typography & Surface */
body {
  color: #cbd5e1 !important;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

p, .desc, .text {
  line-height: 1.7 !important;
  color: #94a3b8 !important;
}

strong, b {
  color: #ffffff !important;
  font-weight: 700 !important;
}

/* 2. Elevated Cards & Containers */
.card,
.team-card,
.trophy-card,
.staff-card,
.fox-player-card,
.sponsor-card-vert,
.hub-card {
  transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1),
              border-color 0.22s ease,
              box-shadow 0.22s ease !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  background: #0e1420 !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
}

.card:hover,
.team-card:hover,
.trophy-card:hover,
.staff-card:hover,
.fox-player-card:hover,
.sponsor-card-vert:hover,
.hub-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(255, 122, 0, 0.45) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.55),
              0 0 20px rgba(255, 122, 0, 0.14) !important;
}

/* 3. Sleek Action Buttons & Badges (No Emoji, No Cliché Pill Clutter) */
.team-sub-btn,
.btn,
button.primary,
.fox-pill {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.team-sub-btn.primary,
.btn-primary {
  background: #ff7a00 !important;
  color: #000000 !important;
  border: 1px solid #ff7a00 !important;
  font-weight: 900 !important;
}

.team-sub-btn.primary:hover,
.btn-primary:hover {
  background: #ff9124 !important;
  border-color: #ff9124 !important;
  color: #000000 !important;
  box-shadow: 0 4px 18px rgba(255, 122, 0, 0.35) !important;
  transform: translateY(-2px) !important;
}

/* 4. Match & Tournament High-Precision Polish */
.match-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 10px 14px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
  transition: background 0.18s ease !important;
}

.match-row:hover {
  background: rgba(255, 255, 255, 0.025) !important;
}

.match-date {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  color: #717d96 !important;
  letter-spacing: 0.05em !important;
}

.match-teams {
  font-family: 'Exo 2', sans-serif !important;
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  color: #f1f5f9 !important;
}

.match-score {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  padding: 3px 10px !important;
  border-radius: 4px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.score-win {
  background: rgba(16, 185, 129, 0.15) !important;
  border: 1px solid rgba(16, 185, 129, 0.35) !important;
  color: #34d399 !important;
}

.score-loss {
  background: rgba(239, 68, 68, 0.15) !important;
  border: 1px solid rgba(239, 68, 68, 0.35) !important;
  color: #f87171 !important;
}

.score-draw {
  background: rgba(245, 158, 11, 0.15) !important;
  border: 1px solid rgba(245, 158, 11, 0.35) !important;
  color: #fbbf24 !important;
}

.score-tbd {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  color: #94a3b8 !important;
}

/* 5. Standings Table High-Contrast Athletic Polish */
.standings-table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 3px !important;
}

.standings-table th {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 0.82rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #8e9bb0 !important;
  padding: 10px 8px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.standings-table td {
  font-family: 'Barlow Condensed', sans-serif !important;
  font-size: 0.98rem !important;
  font-weight: 700 !important;
  padding: 11px 8px !important;
  background: rgba(255, 255, 255, 0.015) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.03) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.03) !important;
}

.standings-table tr:hover td {
  background: rgba(255, 255, 255, 0.04) !important;
}

.standings-table tr.fox-row td,
.standings-table tr.highlight td,
.standings-table td.pts {
  color: #ffffff !important;
  font-weight: 900 !important;
}

/* ==========================================================================
   6. FUTURE-PROOF COLLECTION GRIDS, PLAYER SOCIALS & SPONSOR RESILIENCE
   Ensures 35+ creators, 40+ players, 8+ sponsors, or 38 matches never break layout
   ========================================================================== */

.fox-players .fox-player-card,
#academy-roster .fox-player-card {
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}

.fox-card-media {
  position: relative;
  overflow: hidden;
  width: 100%;
  flex-shrink: 0;
}

.fox-players .fox-card-img,
#academy-roster .fox-card-img {
  width: 100%;
  aspect-ratio: 9 / 14;
  object-fit: cover;
  object-position: center top;
  display: block;
}

.fox-card-info .fox-card-tag,
.fox-card-info .fox-card-name {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.fox-players .socials-wrap,
#academy-roster .socials-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  min-height: 46px;
  padding: 8px 10px;
  margin-top: auto;
  background: rgba(8, 11, 16, 0.78);
  border-top: 1px solid rgba(255, 255, 255, 0.07);
  position: relative;
  z-index: 3;
}

.fox-players .socials-wrap a.s,
#academy-roster .socials-wrap a.s {
  width: 30px;
  height: 30px;
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.09);
  transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease;
  text-decoration: none;
}

.fox-players .socials-wrap a.s:hover,
#academy-roster .socials-wrap a.s:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 122, 0, 0.55);
  background: rgba(255, 122, 0, 0.14);
}

.fox-players .socials-wrap a.s svg,
#academy-roster .socials-wrap a.s svg {
  width: 15px;
  height: 15px;
  display: block;
}

.socials-wrap .s-empty {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(148, 163, 184, 0.45);
}

/* Creator Network Dynamic Tag Filter Bar */
.fox-filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 20px;
  align-items: center;
}

.fox-filter-pill {
  background: rgba(14, 18, 26, 0.8);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #cbd5e1;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: 0.9rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 7px 16px;
  border-radius: 999px;
  cursor: pointer;
  transition: all 0.18s ease;
}

.fox-filter-pill:hover {
  border-color: rgba(255, 122, 0, 0.45);
  color: #fff;
}

.fox-filter-pill.active {
  background: #ff7a00;
  border-color: #ff7a00;
  color: #000;
}

/* Sponsors Elastic Multi-Card Vertical Grid */
#sponsors-directory.sponsors-directory {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(310px, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

#sponsors-directory .sponsor-row-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  position: relative !important;
  height: 100% !important;
}

#sponsors-directory .sponsor-row-card .sponsor-link {
  margin-top: auto !important;
}

.sponsor-logo-opt {
  max-height: 48px;
  max-width: 160px;
  width: auto;
  object-fit: contain;
  margin-bottom: 14px;
  display: block;
}

#fx-foot .fx-foot-brand {
  user-select: none;
  -webkit-user-select: none;
}

/* 7. Admin Control Containers: Strictly hidden for public visitors */
.fox-card-del-btn,
.fox-card-actions-bar,
.fox-match-del-btn,
.fox-table-del-btn,
.fox-add-player-btn,
.fox-add-match-btn,
.fox-add-team-btn,
.fox-add-trophy-btn,
.fox-collection-add-wrap,
.fox-trophy-col-actions,
.fox-item-inline-tools {
  display: none !important;
}

body.fox-edit-mode .fox-collection-add-wrap,
body.fox-edit-mode .fox-trophy-col-actions {
  display: flex !important;
  justify-content: center;
  margin: 18px auto 12px;
  width: 100%;
}

body.fox-edit-mode .fox-card-del-btn,
body.fox-edit-mode .fox-match-del-btn,
body.fox-edit-mode .fox-table-del-btn,
body.fox-edit-mode .fox-add-player-btn,
body.fox-edit-mode .fox-add-match-btn,
body.fox-edit-mode .fox-add-team-btn,
body.fox-edit-mode .fox-add-trophy-btn,
body.fox-edit-mode .fox-item-inline-tools {
  display: inline-flex !important;
}
